所以在我的笔记本电脑上(mac book pro)我拉出我的bash并点击节点来处理一些日期对象
我收到了这个回复:
$node
> var d = new Date();
Sat Oct 03 2015 03:48:41 GMT-0700 (PDT)
> d.toLocaleTimeString();
'3:48:41 AM'
> d.toLocaleTimeString('en-US', { hour: '2-digit', minute:'2-digit' });
'3:48 AM'
所以我在这里得到了我需要的确切答案
现在当我在我的服务器(分操作系统)上执行此操作时,我得到了不同的响应
> var d = new Date();
undefined
> d.toLocaleTimeString();
'03:13:19'
> d.toLocaleTimeString('en-US');
'03:13:19'
> d.toLocaleTimeString('en-US', {hour12:true});
'03:13:19'
> d.toLocaleTimeString('en-US', { hour: '2-digit', minute:'2-digit' });
'03:13:19'
>FML
任何人都可以解释为什么它不适用于我的服务器,是否有办法解决它?
答案 0 :(得分:0)
看起来toLocaleTimeString与配置服务器的方式不兼容。
首先,检查服务器中的时区。请参阅https://chrisjean.com/change-timezone-in-centos。
另一件有用的事情就是使用像moment
这样的库,使其变得简单并且格式一致:
var moment = require('moment');
console.log(moment().format('MMMM Do YYYY, h:mm:ss a'));