Node.js在哪里得到它的时区,我怎样才能全局设置它?
我正在运行Windows 10 Professional,并将我的时区和区域设置设置为布里斯class/澳大利亚(UTC + 10:00)。 此外,我正在为我正在构build的应用程序在我的系统上运行Node.js。
我在Node.js中运行以下内容:
var x = new Date(); console.log(x);
它返回了以下内容:
2017-09-07T23:42:33.719Z
注意date时间string结尾的Z? 这代表祖鲁时间。 (UTC + 0)
我认为这是在没有指定时区时在Node.js中默认设置的。 如何在Node.js中全局指定时区,以确保所有的date对象都正确返回?
您可以将TZ env设置为时区string。
例如:
$ export TZ=Europe/Amsterdam $ node > Date() 'Fri Sep 08 2017 03:02:57 GMT+0200 (CEST)' $ export TZ=America/Anchorage $ node > Date() 'Thu Sep 07 2017 17:04:46 GMT-0800 (AKDT)'
您也可以在运行时设置process.env.TZ
:
> process.env.TZ = 'Antarctica/Mawson' > Date() 'Thu Sep 07 2017 17:11:00 GMT-0800 (+05)'
注意,不pipe时区如何, new Date()
返回UTC 2017-09-08T01:05:58.103Z
。