问题标签 [moment-timezone]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
193 浏览

javascript - 如何将 utc 日期转换为毫秒 - 时刻

我正在尝试使用我的 ReactJs 应用程序中的时刻来比较两个日期。在比较两天之前,我必须将日期转换为毫秒。

我试过valueOf()了,但它没有返回毫秒。我怎样才能得到低于格式化日期的毫秒?

0 投票
0 回答
292 浏览

javascript - 如何使用特定格式的时区缩写验证日期时间值

我有一个 Ruby on Rails 应用程序,它有几个显示日期时间值的 JQuery DataTables,其中包括时区缩写(EST、EDT、PST、PDT 等)。我希望表格排序以正确的顺序正确排序这些日期时间值。即使表中的所有行对日期时间对象使用相同的语言环境,实际的时区缩写也会因夏令时当时是否有效而有所不同(例如,表可能同时包含 '03/05/ 18 09:32 AM PST”和“05/31/17 09:04 AM PDT”)。

我已按照此处概述的步骤添加用于日期排序的 momentjs 格式:https ://datatables.net/blog/2014-12-18 但是,自 1.6 版以来,时区的“z”格式标记已被 momentjs 弃用。 0: http: //momentjs.com/docs/#/displaying/ 我不能只硬编码已知时区的格式(例如$.fn.dataTable.moment( 'MM/DD/YY hh:mm A [PST]')$.fn.dataTable.moment( 'MM/DD/YY hh:mm A [PDT]')),因为格式不会匹配我的数据表中列中的所有项目,所以排序仍然不会工作。

我引入了 moment-timezone.js 并打算更新 datetime-moment.js 中的 $.fn.dataTable.moment() 函数来使用moment.tz(dateTime, format, useStrict, timezone).isValid()?,而不是moment(dateTime, format, locale, useStrict).isValid()?这样我就可以传入包含“z”标记的格式,但是 moment.tz().isValid() 方法的行为不像我预期的那样。

当我尝试针对包含 z 令牌的格式使用时区缩写验证 dateTime 值时,isValid() 返回 false。

moment.tz('06/19/19 01:53 PM PDT','MM/DD/YY hh:mm A z',true, 'America/Los_Angeles').isValid()

这是我刚刚使用该格式返回给我的确​​切日期时间字符串。示例: moment().tz('America/Los_Angeles').format('MM/DD/YY hh:mm A z');返回06/19/19 01:53 PM PDT

如果我删除区域缩写, moment.tz().isValid() 函数工作得很好,当我使用偏移量而不是时区缩写时它甚至返回 true: moment.tz('06/19/19 01:53 PM -0700','MM/DD/YY hh:mm A Z',true, 'America/Los_Angeles').isValid()

我更愿意在我的日期时间值中保留时区缩写,因为它比 UTC 偏移量更方便用户。有没有人知道为什么 moment.tz().isValid() 似乎不能像预期的那样使用时区缩写?或者对包含具有不同时区缩写的日期时间值的 jquery 数据表进行排序的任何替代建议?我什至会考虑根据用户的本地时区将所有日期时间值转换为一个缩写的时区,但 Ruby Time.in_time_zone() 方法不会接受所有时区缩写(例如,传入“EST”将正确在 EST 中显示所有日期时间值,将所有 EDT 时间调整一小时。但“PST”在这里不是一个可接受的值。传入“America/Los_Angeles”

0 投票
1 回答
21 浏览

angular6 - 是否可以在 Angular 6 应用程序中使用矩来检测网页中显示时间的 dst

请问有人知道在angular6中开发了一个响应式网站,它显示不同时区的时间,例如西欧,特别是英国,NL和美国,特别是CA,问题是我们可以使用Moment来显示这些地区的当前时间并且可以moment 还自动处理不同地区的夏令时功能

0 投票
2 回答
10056 浏览

postman - 如何在 Postman 中获取不同时区的当地时间?

我想获取罗马时区的当地时间。在这里postman_sandbox_api_reference中没有找到关于如何在邮递员文档中使用时刻沙箱内置库的任何详细信息

到目前为止我尝试过的

它抛出的错误 - TypeError | moment(...).tz is not a function

又一次尝试——

它抛出的错误 -Error | Cannot find module 'moment-timezone'

我哪里错了?谁能指出我正确的方向。

谢谢

0 投票
2 回答
50 浏览

javascript - 带有时区的时刻 toDate 没有给出正确的时间

不知何故,我试图获取 America/New_York 的时区(我的语言环境时间是从 EST 开始的 -1 小时)。但是当我使用时,我总是在同一时间

我使用了错误的方法还是发生了什么?有人可以帮帮我吗?

这是 jsFiddle 的链接: https ://jsfiddle.net/Lgr3qdjf/

0 投票
2 回答
87 浏览

angular - 从 2019-08-08T20:41:00-1000 转换为 2019 年 8 月 8 日 08:41 PM HST

我想将2019-08-08T20:41:00-1000转换为MMM dd, yyyy, hh:mm az(2019 年 8 月 8 日,下午 8:41 HST)格式。我没有找到任何解决方案..请帮帮我

我试图从该日期偏移并转换为日期对象,但它始终显示 2019 年 8 月 9 日下午 12:32 GMT+5。这是错误的输出...

预计输出时间为 2019 年 8 月 8 日下午 8:41 HST

0 投票
1 回答
80 浏览

node.js - 我如何保持时间偏移?

我正在尝试从时刻对象中添加/减去天数。但是,我遇到的问题是时间偏移与服务器的本地时间不同。

在分贝我的时间

但是,我在本地得到+0000

所以现在如果我尝试转换存储在数据库中的时间

如果我使用 parseZone() 我得到

我还尝试手动删除 4 小时的偏移量(以平衡它?)

但是输出(格式化后)的值总是与输入不同。

将 moment obj 格式化回字符串后,如何获得 2019-08-14T21:38:50-04:00 作为输出?

0 投票
3 回答
3617 浏览

javascript - 使用 jest moment().format 模拟返回当前日期而不是模拟日期

我正在尝试使用 jest 来模拟时刻库的格式功能。我的测试文件中有以下代码。

app.spec.js

应用程序.js

它正在生成以下输出:

预期的输出应该是:

谁能帮我指出代码有什么问题?

谢谢。

0 投票
2 回答
172 浏览

javascript - MomentJS 错误输出

我正在使用 moment 将毫秒转换为日期和时间它给了我预期的正确输出,但是在转换相同的日期+时间时它给了我错误的输出。

我使用了 unix,valueOf 矩方法。

请指导我哪里错了!

0 投票
1 回答
193 浏览

javascript - 如何将字符串转换为日期并在 JavaScript 中设置默认时区

我使用 node.js 并且有以下要求。有一个日期格式字符串 1899-12-29 12:00 AM,现在我想将它转换为 Date 对象,我尝试使用 moment.js 或 moment-timezone.js 来转换它,同时它将时区设置为我的本地时区(见下面的代码)

在我的日期字符串中,没有时区信息,我想将其转换为日期并将时区设置为 UTC +0,因此日期对象值如下所示 1899-12-29 12:00 AM UTC +00:00

我该如何实现它。