如何在node.js中设置默认时区?
当前回答
我知道这个帖子很旧了,但我认为这将帮助任何像我一样从谷歌登陆这里的人。
在GAE Flex (NodeJs)中,你可以在app.yaml文件中设置环境变量TZ(一个管理应用程序中所有日期时区的变量),我给你留了一个例子:
app.yaml
# [START env]
env_variables:
# Timezone
TZ: America/Argentina/Buenos_Aires
其他回答
对于那些将Node.js应用程序部署到Amazon AWS Elastic Beanstalk的人,这里有一个答案。我还没有在其他地方看到过这样的记录:
在Configuration -> Software -> Environment Properties下,简单地设置键值对TZ和您的时区,例如America/Los Angeles,然后应用更改。
你可以通过在Node应用程序中输出new Date(). tostring()来验证效果,并注意时区后缀。
另一种至少在Linux环境下对我有用的方法是像这样运行你的Node.js应用程序:
env TZ='Europe/Amsterdam' node server.js
这至少可以确保从一开始就正确地设置了时区。
const nDate =新日期()。toLocaleString(“en - us”{ 时区:“亚洲/首尔” }); console.log (nDate);
从节点13开始,您现在可以重复设置process.env.TZ,它将反映在新的Date对象的时区中。我不知道我是否会在生产代码中使用它,但它在单元测试中绝对有用。
> process.env.TZ = 'Europe/London';
'Europe/London'
> (new Date().toString())
'Fri Mar 20 2020 09:39:59 GMT+0000 (Greenwich Mean Time)'
> process.env.TZ = 'Europe/Amsterdam';
'Europe/Amsterdam'
> (new Date().toString())
'Fri Mar 20 2020 10:40:07 GMT+0100 (Central European Standard Time)'
我使用这个NPM包unix-system-timezone
推荐文章
- 很好的初学者教程socket.io?
- CALL_AND_RETRY_LAST分配失败-进程内存不足
- 在Ubuntu上安装Node.js
- 使用express.js代理
- 在c#中创建一个特定时区的DateTime
- Node -使用NODE_MODULE_VERSION 51根据不同的Node.js版本编译
- RabbitMQ / AMQP:单队列,同一消息的多个消费者?
- 如何在JavaScript中获得时区名称?
- Node.js同步执行系统命令
- 禁用包的postinstall脚本
- Node.js上的html解析器
- 错误:无法找到模块“webpack”
- 如何改变时间和时区在iPhone模拟器?
- 在node.js中使用async / await文件系统
- NodeJS -用NPM安装错误