如何在node.js中设置默认时区?
当前回答
const nDate =新日期()。toLocaleString(“en - us”{ 时区:“亚洲/首尔” }); console.log (nDate);
其他回答
你可以通过将环境变量TZ设置为UTC来强制Node.js进程时区
因此,所有时间都将以UTC+00:00计算
完整名单:https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
示例package.json:
{
"scripts": {
"start": "TZ='UTC' node index.js"
}
}
只要在你的主文件中设置环境变量,比如index.js或app.js或main.js或任何你的文件名:
process.env.TZ = "Asia/Tehran";
这将设置将在整个节点应用程序中使用的时区
有时你可能在其他地方的虚拟服务器上运行代码——当运行NODEJS或其他风格时,这可能会变得混乱。
这里有一个修复程序,可以让你轻松地使用任何时区。
查看这里的时区列表
只需将时区短语放在FORMAT行的括号内。
在本例中,我将EPOCH转换为Eastern。
//RE: https://www.npmjs.com/package/date-and-time
const date = require('date-and-time');
let unixEpochTime = (seconds * 1000);
const dd=new Date(unixEpochTime);
let myFormattedDateTime = date.format(dd, 'YYYY/MM/DD HH:mm:ss A [America/New_York]Z');
let myFormattedDateTime24 = date.format(dd, 'YYYY/MM/DD HH:mm:ss [America/New_York]Z');
const nDate =新日期()。toLocaleString(“en - us”{ 时区:“亚洲/首尔” }); console.log (nDate);
不幸的是,设置process.env.TZ工作得不是很好——基本上不确定什么时候更改会生效)。
因此,在启动节点之前设置系统时区是唯一正确的选择。
但是,如果您不能这样做,应该可以使用节点时间作为一种变通方法:以本地时间或UTC时间获取时间,并将它们转换为所需的时区。参见如何在Nodejs中使用时区偏移?获取详细信息。
推荐文章
- npm犯错!代码UNABLE_TO_GET_ISSUER_CERT_LOCALLY
- Access-Control-Allow-Origin不允许Origin < Origin >
- 如何获得所有已注册的快捷路线?
- 你可以为你的组织托管一个私有的存储库来使用npm吗?
- 如何定位父文件夹?
- 如何保存时区解析日期/时间字符串与strptime()?
- Gulp命令未找到-安装Gulp后错误
- 在Node.js中写入文件时创建目录
- 如何将自定义脚本添加到包中。Json文件,运行javascript文件?
- 使用child_process。execSync但保持输出在控制台
- SyntaxError:在严格模式下使用const
- 在Node.js中递归复制文件夹
- 如何在node.js中设置默认时区?
- “react-scripts”不被视为内部或外部命令
- 如何正确地读取异步/等待文件?