试图在上海为一个小项目获取 JavaScript 的当前时间。有人知道最简单的方法吗?
问问题
2164 次
3 回答
3
我像一个懒惰的流浪汉一样使用了moment.js :
var now = moment();
var timeInShanghai = now.tz('Asia/Shanghai').format('h:mma');
于 2013-11-06T02:31:50.113 回答
1
整个中国有一个时区,即UCT+08:00。所以如果你想根据主机的系统设置得到上海的当前时间,获取本地时间,加上时区偏移量(ECMAScript时区偏移量是分钟要加上得到UTC所以UTC+10:00是-600),然后添加上海补偿:
function timeInShanghai() {
function z(n){return (n<10?'0':'') + n}
var d = new Date();
d.setMinutes(d.getMinutes() + d.getTimezoneOffset() + 480);
return z(d.getHours()) + ':' + z(d.getMinutes()) + ':' + z(d.getSeconds());
}
如果他们更改时区或采用夏令时,这有点没用。
于 2013-11-06T02:46:02.473 回答
0
上海的时区偏移量为 8 获取日期:
var date=new Date().getTime();
获取小时、分钟、秒
seconds=parseInt((d/1000)%60);
hours=parseInt((d/(1000*60*60))%60)+8; \\for the offset
minutes=parseInt((d/(1000*60))%60);
并将其作为字符串重新组合在一起:
console.log(hours+":"+minutes+":"+seconds);
于 2013-11-06T02:20:34.150 回答