我已经阅读了很多关于 Moment Timezone 的帖子,但我仍然没有找到明确的答案:
我有一个应用程序的用户遍布世界各地,无论浏览器时区如何,我总是希望将日期和时间显示为 EST 或 EDT,以当时有效(“美国/纽约”)为准。 moment-timezone.js 是否只需要加载 America/New_York 的数据,因为这是我想要显示的唯一时区,或者我是否需要用户可能所在的所有时区的数据,以便 moment-timezone能够从那个时区转换到美国/纽约?我需要能够从任何时区转换,因为随着新用户的加入,我无法提前知道他们(和他们的浏览器)将在哪个时区。
现在我正在使用 moment-timezone-with-data.js,但它有 190KB。在这一点上,我想我宁愿发出一个快速的 AJAX 请求并从服务器获取日期和时间——在 PHP 中很容易获取所需时区的当前日期/时间。
最佳答案
简而言之,如果您只想将某个任意时刻转换为该时区,则只需要 Am/NY,因为对 moment() 的调用将生成一个对应于“UTCtime+ local offset”的对象。只要您知道 UTC 时间,您并不真正关心它来自哪个时间。您从 Am/NY tz 数据中得到的是哪个偏移量现在适用于 UTC 时间以获取 Am/NY 时间。
关于javascript - 将什么数据加载到 moment-timezone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40249979/