javascript - 使用 Moment Timezone 将 UTC 转换为太平洋时间 (javascript)

标签 javascript angularjs timezone momentjs

我正在尝试将“formattedLocalTime”设置为太平洋时间,我的 4 行代码如下所示。

虽然 chrome 调试器将“locTime”显示为“Tue Sep 30 2014 16:17:25”,这是我期望的正确值,但最后一行中的 formattedLocalTime 是“09/30/2014 11:17 pm”,其中是 UTC 时间,而不是我设置的时区(America/Los_Angeles),它应该是“09/30/2014 4:17 pm”(4:17 而不是 11:17)

非常感谢任何建议。

var timestamp = 1412144245453;                      // Tue Sep 30 2014 23:17:25
var utc = moment.tz(timestamp, "Etc/UTC");          // Tue Sep 30 2014 23:17:25 (displayed in chrome debugger)
var locTime = utc.clone().tz("America/Los_Angeles"); // Tue Sep 30 2014 16:17:25 (displayed in chrome debugger)
var formattedLocalTime = moment(locTime).format("MM/DD/YYYY h:mm a")

最佳答案

您可以一步完成此操作:

moment.tz(1412144245453, 'America/Los_Angeles').format('MM/DD/YYYY h:mm a')

输出:“09/30/2014 11:17 pm”

此外,您错误地评估了该时间戳的时间。在 UTC 中,此时间戳为 2014 年 10 月 1 日上午 6:17:25。对应的太平洋时间确实是 2014 年 9 月 30 日晚上 11:17:25。

您可以使用 epochconverter.com 等网站进行检查。 ,或者在 moment.js 中像这样:

moment.utc(1412144245453).format()   // "2014-10-01T06:17:25+00:00"

关于javascript - 使用 Moment Timezone 将 UTC 转换为太平洋时间 (javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26134182/

相关文章:

javascript - 无法将参数传递给 Angular Directive(指令)

java - 将字符串日期转换为 ISO 格式日期

ruby-on-rails - 带时区的 DateTime.new (Rails)

javascript - 如何持续监视作用域变量直到更新

php - 如何为不同地点设置时区?

javascript - 将指针快速移出窗口时,元素保持悬停状态

javascript - 如何在弹出窗口中打开 Google map 链接?

javascript - 从电子邮件中删除无效字符

javascript - 从 html 文件执行 Nodejs 脚本

javascript - ng-show 和 $scope.$apply 问题