momentjs:如何获取特定时区的日期

2023-12-30

简而言之,我希望有时间尊重服务器的时区。我已将机器的时区设置为阿拉斯加,但我将布里斯班时区字符串传递给 moment。现在我需要moment.toDate返回与我在 moment 构造函数中传递的时区相同的日期实例;例如

m = moment("2016-11-20T08:00:00+10:00")
m.format() // "2016-11-20T08:00:00+10:00" 
m.toDate() // Sat Nov 19 2016 13:00:00 GMT-0900 (AKST) 

我想得到一个Date从输入时区那一刻开始的实例;例如以某种方式得到toDate回来Sun Nov 20 2016 08:00:00 GMT+1000 (AEST).

FWIW我尝试过使用和不使用相同的代码moment.tz.setDefault虽然它正确地改变了format结果,toDate始终使用机器的时区!

Update

我需要这种行为的原因是一些 JavaScript 库和控件不理解moment并且只与Date当他们返回时,时间/日期会出现偏差。我当前正在处理的一个示例是 jQuery UI 日期选择器控件。我希望日期选择器显示服务器上(或特定时区)上的当前日期。

提前致谢。


The Date对象内部表示 UTC 时间,并且可以only投影时使用其运行的计算机的时区。

完全没有办法生产Date使用任意时区的对象。您可能遇到的任何尝试操纵Date对象(例如通过添加或减去时区偏移量)从根本上来说是有缺陷的。

Moment 本身具有出色的时区支持,包括用于处理命名时区而不仅仅是时区偏移的 moment-timezone 扩展。但一旦你回到一个Date对象 - 你又回到了该对象行为的支配之下。

抱歉,但没有办法实现您的要求。也许你可以详细说明why如果您想这样做,我可以推荐一个解决方法。


更新:关于your更新,通常有一种机制可以从日期选择器中获取值,如下所示text,而不是作为日期对象。以 jQuery UI 日期选择器控件为例,onSelect事件已经以文本形式提供给您,或者您可以简单地致电.val()代替.datepicker('getDate')将文本移出字段。一旦你有了文本值,你就可以用你喜欢的方式解析它。

同样,设置值时,不一定需要Date目的。您可以将文本框的值设置为字符串,也可以将字符串传递给setDate http://api.jqueryui.com/datepicker/#method-setDate功能。

在大多数情况下,您不必经历Date目的。但如果由于某种原因你这样做了,那么你需要用一些疯狂的东西人为地构建一个,比如:

var d = new Date(m.format('YYYY/MM/DD'));

通常情况下,我会反对这样做 - 但如果它只是为了将值传递给 UI 控件,那么它可能没问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

momentjs:如何获取特定时区的日期 的相关文章

  • 在 Three.js 中绕点旋转对象的正确方法是什么?

    关于 Three js 的大多数教程 问题都建议使用 Three js 绕点旋转对象的方法是在要旋转的位置创建父对象 附加对象 然后移动子对象 然后 当父级旋转时 子级围绕该点旋转 例如 Make a pivot var pivot new
  • 显示具有多个父代的 D3 树

    我目前有this http bl ocks org mbostock 4339083图已实现 我希望在描述具有多个父节点的子节点时保持结构和可折叠性 有没有办法做到这一点 我研究了力图 但我也想保留一组层次结构 这意味着 1 级的父级可以有
  • 在特定页面上执行 javascript 的正确“Rails”方式

    我试图在特定页面上运行 javascript 而我唯一的解决方案似乎是反模式 我有controller js内部生成的assets javascripts 我在用着gem jquery turbolinks 我的代码类似于以下内容 docu
  • jQuery .push 到 .get 调用中的数组给出空结果

    谁能告诉我为什么下面给我一个空字符串 当我console log contentArray in the get 回调函数它显示数据 但是当我尝试在下面的代码中执行它时 结果为空 sectionArray contentArray func
  • 如何使用有角度的材料创建卡片网格?

    我正在尝试使用 ng repeat 创建每行三张卡片的网格 我有一个普通的 javascript 对象数组附加到范围 下面的代码将为每张卡创建一个新行 div div
  • 通过 JavaScript 获取表单名称

    我有一个简单的问题 但我在网上找不到好的解决方案 我有这个 HTML 代码
  • 如何在网站上使用 svg 元素制作块的屏幕截图?

    我在网站上创建了一个构造函数 其本质是将所选元素及其颜色 svg中的元素 添加到访问者选择的背景和背景颜色 png中的背景 中 然后必须单击 保存 结果 按钮并仅执行工作区的屏幕截图 我写了这个脚本 但它需要屏幕截图 但只有背景 并忽略选定
  • React autoFocus 将光标设置为输入值的开头

    我有一个受控输入 最初显示一个值 我已将该输入设置为自动聚焦 但当我希望它出现在末尾时 光标出现在输入的开头 我知道这可能是因为自动对焦是在值之前添加的 但我不能 100 确定 在输入字段末尾完成光标初始化的最佳方法是什么 var Test
  • JavaScript 继承;调用和原型

    要在Javascript中实现继承 通常需要执行以下两个步骤 假设我有一个基类 Animal var Animal function name this name name 我现在想从中派生一个子类 Dog 所以我想说 var Dog fu
  • mongodb 聚合 - 累积字段的不同组值

    如果我有Player表格文件 name String score Int 我有Group文档 其中组代表玩家列表 groupName String players ObjectID 玩家可以属于多个组 我想做一个聚合Player文档 按以下
  • 使用 JavaScript 移动页面上的按钮

    我的按钮可以移动 但奇怪的是 我无法弄清楚偏移是否有问题 我希望我的按钮随着鼠标光标移动 但现在它的移动方式不是我想要的 有时它会消失 另外 创建的新按钮是重叠的 我不知道如何解决这个问题并拥有更好的外观 var coorA var coo
  • 改变 JavaScript 中的顶部填充

    以下是我在 css 中设置顶部填充的方法 body font size font size px margin 0 padding 100px 0 20px 0 width 100 important 如何使用最简单的 javascript
  • JavaScript eval("{}") 返回行为?

    根据ECMA 262 规范 http www ecma international org publications files ECMA ST Ecma 262 pdf 以下语句返回1 eval 1 eval 1 eval 1 var a
  • 表单发布请求并存储收到的数据

    我有一个非常简单的表单 在提交时发出发布请求
  • 如何使用 JavaScript 或 jQuery 克隆 HTML 元素的样式对象?

    我正在尝试克隆元素的样式对象 这应该允许我在更改后重置所述元素的样式 例如 el style left 50px curr style left 50px Modify the elements style The cloned style
  • 使用javascript动态更新css内容

    需要将 css 更新为动态值 我不确定最好的方法是什么 div style zoom 1 div 缩放级别将根据窗口大小调整触发 应用程序将相应缩放 我将此应用程序加载到 cordova 中并让它在 iPAD 中运行 然后我意识到需要使用
  • 使用 Enzyme 测试 `React.createRef` api

    我想测试下面的类 它使用React createRef api 不过 快速搜索并没有发现任何这样做的例子 有人成功过吗 我该如何嘲笑裁判 理想情况下我想使用shallow class Main extends React Component
  • 将数组从 jquery ajax 传递到代码后面

    我必须将二维数组传递给在asp net网页代码后面编写的页面方法我有一个变量objList作为二维数组 我使用以下代码来实现此目的 但没有成功 并且未调用页面方法 脚本语言 function BindTable objList ajax u
  • 测量窗口偏移

    有没有一种方法可以测量 jQuery 中窗口的偏移量 以便我可以比较 固定 元素和相对定位元素的位置 我需要能够知道窗口滚动了多远 以便我可以使用该图来计算固定元素的高度 相对于视口顶部 和相对对象的高度 相对于顶部 之间的差异文件的内容
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对

随机推荐

  • 无法让动态 OrderBy 在我的通用列表上工作

    我无法让动态 OrderBy 在我的通用列表上工作 var list CacheObjects CompetencyAssessments Select x gt new CompetencyAssessmentLineViewModel
  • PHP 和 C++ 之间的套接字连接

    我在 PHP 页面和 C 代码之间创建了 TCP 套接字连接 这是这个的 C 代码 服务器 cpp include
  • Stripe JS 在状态更改时发出重复请求和新请求

    我在前端使用 stripe JS 库 只是设置令牌 实际上并没有使用该库来做任何事情 奇怪的是 当我加载任何页面条纹时 都会发出一堆奇怪的请求 其中很多都是重复的 通常它看起来像这样 https m stripe com 4 https m
  • 异步/等待中的重入?

    我有一个按钮 上面有一个async调用异步方法的处理程序 它看起来是这样的 private async void Button1 OnClick object sender RoutedEventArgs e await IpChanged
  • react-native run-android 部署旧版本

    我正在构建一个反应本机 Android 应用程序 我使用 Windows 作为我的开发区域 要将我的应用程序推送到手机 我只需通过 USB 将手机连接到计算机 然后运行命令react native run android 这在我的一部 An
  • xlim 不适用于离散值 [ggplot2]

    我正在尝试使用以下命令在 ggplot put 中设置 xlim 和 ylim ylim c 0 1 5 xlim c 0 100 OR coord cartesian xlim c 0 100 ylim 0 1 5 似乎抛出这个错误 Er
  • Winston 没有将日志写入文件

    我在 Winston 中对错误和警告进行了两次传输 据称这些传输会写入文件 现有的控制台日志记录传输工作正常 我确实检查过pm2 logs并看到了日志 但文件的传输没有说什么 use strict const winston require
  • 评论系统设计

    这是我目前的评论系统设计 我正在为一个有很多区域 博客 教程 手册等的网站开发它 正如应该为每个 tblBlogComments tblTutorialComments 等等 我试图寻求一种适合所有方法的结构 这样 我可以将评论系统变成一个
  • 获取整个语言文件数组

    我是新手拉拉维尔 4 0 如何从中获取整个数组lang en texts php 有没有Lang getAll method 我的目标是在我的基本控制器中生成关键字 描述 将它们填充到主刀片模板中 DO M 的元标记和其他位置 如果我的方法
  • Node.js WebRTC 客户端

    我正在寻找一个webrtc questions tagged webrtc实施node js questions tagged node js传输数据NodeJS 客户端到另一个 webRTC 对等点 所以就我而言 nodejs 应用程序是
  • 更新 Azure VM 规模集上的 VHD

    我已使用 Azure VM 的 vhd 在 Azure 上创建了 VMSS 如何将 VMSS 的源 vhd 更改为新的 vhd Get the following error 我们可以用Update AzureRmVmss and Upda
  • 使用openssl加密和解密小文件

    我想用 C C 编写一个小程序 它读取一个小文本文件 并使用 内部 密钥对其进行加密 然后我还想编写另一个小程序 它可以使用内部相同的密钥解密加密的文件 我查看了 openSSL 网站并用谷歌搜索 但发现不是简单的例子 有人尝试过做这件事吗
  • TypeError:stat:路径应该是字符串、字节、os.PathLike 或整数,而不是 _io.TextIOWrapper

    我在一个python教程网站上找到了以下代码 from nltk tag import StanfordNERTagger stanford classifier open english all 3class distsim crf se
  • Google Places API Android:自动完成关闭得太快

    我将 Place Autocompletion 添加到我的 Android 应用程序中 当我单击按钮时 chooseLocationButton 它会正确打开自动完成小部件 问题是当我想在搜索字段中写一个名字时 单击第一次击键后 自动完成小
  • 如何在 Asp.net 中使用 javascript 检测 IE 11

    您好 我想检测浏览器 IE 8 或更高版本适合我 为此 我使用了以下代码 但它对于 IE 11 失败 对于其他它的检测正确 function getInternetExplorerVersion var rv 1 Return value
  • MVVM 疯狂:命令

    我喜欢MVVM 我不喜欢它 但是喜欢它 大部分都是有道理的 但是 我一直在阅读鼓励您编写大量代码的文章 以便您可以编写 XAML 而不必在代码隐藏中编写任何代码 让我举一个例子 最近 我想将 ViewModel 中的命令连接到 ListVi
  • 在框架外使用 Laravel 4 的 Input 类

    我喜欢 Laravel 4 处理输入的方式 以及如何通过 Input get 获取值 无论它是通过 get post 还是其他方式发送 我正在开发一个不使用 Laravel 作为框架的项目 但如果我可以使用 Input 类 那就太好了 谁能
  • 在 Activity 之上创建一个透明对话框

    背景 我试图在当前活动之上放置一个层 该层将解释当前屏幕上发生的情况 类似于联系 应用程序 https play google com store apps details id com contapps android 我知道有一些解决方
  • 插入图像到Excel

    我正在使用 Visual Basic Express 我想将图像插入 Excel 应用程序 我已经成功了 这是代码 Dim oExcel As Object Dim oBook As Object Dim oSheet As Object
  • momentjs:如何获取特定时区的日期

    简而言之 我希望有时间尊重服务器的时区 我已将机器的时区设置为阿拉斯加 但我将布里斯班时区字符串传递给 moment 现在我需要moment toDate返回与我在 moment 构造函数中传递的时区相同的日期实例 例如 m moment