首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从今天的当地时间获取UTC时间戳

从今天的当地时间获取UTC时间戳
EN

Stack Overflow用户
提问于 2014-08-25 17:21:28
回答 2查看 632关注 0票数 0

假设我知道这一次(hh:mm:ss)没有日期,但我知道这是今天:

12:34:56

我知道时间在CST时区(UTC +0800)。我需要从时间上得到时间戳。

假设当前的UTC时间是2014/08/25 17:10:00CST是2014/08/26 01:10:00 (UTC +0800),这意味着科技委已经是第二天了。因此,我不能用这样的东西:

代码语言:javascript
复制
var d = new Date().toJSON().slice(0,10);
// "d" returns "2014-08-25" in local time -> this is bad

我需要转换这个:

1:10 (CST) -> to 2014/08/25 17:10 (UTC)或其时间戳1408986600

当我只知道时间和时区时,如何才能得到完整的日期-时间或时间戳?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-08-25 17:49:42

我想我找到了使用moment-timezone.js的简单方法

代码语言:javascript
复制
// hh:mm:ss in CST timezone
var cst_time = '1:10:00'; 

// get today's date in CST timezone
var cst_today = moment.tz("Asia/Shanghai").format("YYYY-MM-DD"); 

// convert date and time from CST to UTC and format it
var timestamp = moment(cst_today + " " + cst_time + " +0800").utc().format("YYYY/MM/DD HH:mm:ss");

// returns "2014/08/25 17:10:00" and it is correct
console.log(timestamp); 
票数 0
EN

Stack Overflow用户

发布于 2014-08-25 17:27:38

您始终可以直接操作Date对象的属性:

代码语言:javascript
复制
var date = new Date();

date.setHours(5);
date.setMinutes(12);
date.setSeconds(10);

console.log(date.toUTCString());
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25491105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档