我正在使用momentjs并使用convertedDate = moment().utcOffset(timezone).format()
将日期转换为不同的时区。这很好但是它是一个字符串,我需要将它转换为日期对象。
我已尝试new Date(convertedDate)
和moment().utcOffset(timezone).toDate()
,但会将当前时区作为日期对象返回。如何保留转换后的时区?
答案 0 :(得分:9)
所以我不是很远。格式需要排除时区才能工作。这段代码终于解决了我需要它的方式。
convertedDate = new Date(moment().utcOffset('-4').format('YYYY-MM-DD HH:mm'));
答案 1 :(得分:2)
一种更干净的方法是使用 30 #Plotting
31 plt.scatter(iris.data[:,1],iris.data[:,2],c=iris.target,cmap=plt.cm.paired)
32 plt.xlabel(iris.feature_names[1])
33 plt.ylabel(iris.feature_names[2])
按照时区获取带有时间的本地Date对象:
moment
PS:假设两件事
- 您已经导入了
像convertedDate = moment.utc(moment.tz(timezone).format('YYYY-MM-DDTHH:mm:ss')).toDate()
和'moment'
。'moment-timezone'
一样给出timezone
的- 值,而不是偏移值
答案 2 :(得分:0)
这应该有效:
我有同样的问题。只需使用与您相同的方法将Date作为字符串获取即可。假设您的日期为:“ 2018-08-05T10:00:00”。
现在,您需要具有正确时间的Date对象。要将String转换为对象而不会弄乱时区,请使用getTimezoneOffset
:
var date = new Date('2016-08-25T00:00:00')
var userTimezoneOffset = date.getTimezoneOffset() * 60000;
new Date(date.getTime() - userTimezoneOffset);
getTimezoneOffset()
将返回负值或正值。必须减去它才能在世界上的每个位置工作。