获取时区的当前日期对象[重复]

Posted

技术标签:

【中文标题】获取时区的当前日期对象[重复]【英文标题】:Get current Date Object of a timezone [duplicate] 【发布时间】:2019-05-24 13:42:07 【问题描述】:

在选定的时区中获取当前时间作为日期对象的最佳方法是什么。我正在使用以下代码在本机反应中获取所选时区的当前时间。

例如。 new Date().toLocaleString('en-US', timeZone: 'Indian/Christmas' )

这段代码的输出是一个字符串,但我需要它在日期对象中。每次我转换回 New Date() 时,都需要默认时区,但我需要自定义时区。我也尝试使用 moment 库,而 momentTimeZone bu 无法获得正确的输出。任何人都可以帮助我解决这个问题

【问题讨论】:

【参考方案1】:

Date 也将dateString 作为参数,并且大多数字符串格式都应该有效(即Date.parse() supports):

> now = new Date().toLocaleString('en-US',  timeZone: 'Indian/Christmas' )
'12/26/2018, 3:51:28 PM'
> now_obj = new Date(now)
2018-12-26T14:51:28.000Z

【讨论】:

感谢您的回复。我的问题是我需要将从 new Date().toLocaleString('en-US', timeZone: 'Indian/Christmas' ) 获得的字符串对象转换回日期对象,而不更改日期对象的时区。 React 原生组件中的 Datepickerios 仅将 Date 对象作为输入。所以,我需要将字符串转换为 Date 对象。每次我将它转换回 Date 时,它​​都需要默认 timezone ,我需要保持 timeZone 不变。 抱歉回复晚了。我现在知道我误解了您的用例。【参考方案2】:

除非您将操作系统时区更改为您想要的,否则您似乎无法做到这一点。您可以定义函数而不是 Date 对象,如下所示:

function getCustomDate(zone) 
    return new Date().toLocaleString('en-US',  timeZone: zone )

【讨论】:

以上是关于获取时区的当前日期对象[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Java从unix时间戳获取当前日期[重复]

针对当前时区调整的不同夏令时的UTC日期[重复]

在用户的时区中获取用户的日期和时间 [重复]

在Java中获取当前时区的日期

获取特定时区的时间[重复]

如何在 Java 中获取时区的当前日期和时间?