javascript - 在 Javascript 中转换 UTC 日期的替代方案?

标签 javascript date

我希望在 JS 中创建一个新的日期,但将其转换为 UTC 时间。例如,假设 castAsUTC() 产生以下所需效果:

var x = new Date('2019-01-01T00:00:00') // In local time (PST)
castAsUTC(x).toISOString(); // => '2019-01-01T00:00:00Z'
// x.toISOString() gives us '2019-01-01T08:00:00Z', which is undesired

目前,我的函数如下所示:

function castAsUTC(date) {
  return new Date(x.toLocaleString() + '+00:00');
}

有没有更干净/更好的方法来产生相同的效果?提前致谢!

编辑:更具体地说,我有兴趣转换日期的时区,而不用尽可能少的算术来改变其实际值。因此调用 .toISOString() 将生成与本地时间相同的日期。

我目前正在使用 moment-timezone 库,但我似乎也无法使用它获得所需的效果。我肯定会接受使用 Moment.js 的答案

最佳答案

您可以使用 utc function 将 Moment 实例切换为 UTC 。然后只需使用 format 即可获取您想要的任何特定输出。

关于javascript - 在 Javascript 中转换 UTC 日期的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55108345/

相关文章:

MYSQL:如何从数据类型为 char(10) 的日期获取星期几、一年中的月份

java - 如何在java,android中将sql日期格式化为Simpledateformat?

javascript - 模拟在 Windows 中打开粘滞键

javascript - Web开发(Spring MVC),浏览器更新缓慢

javascript - 错误 : timeout of 2000ms exceeded. 带有 promise 的单元测试

javascript - 根据选定的复选框填充输入(jQuery)

mysql : get previous date and breaking loop

javascript - 循环 dom 元素以获取属性值

java - 从字符串中提取各种格式的日期?

Javascript:在字符串中查找日期 (dd/mm/yyyy) 的最佳方法