我想构建一个Date
对象以及动态选择的时区。我目前在IST时区。我想消除Date.parse()
的使用,因为它有时不像预期的那样表现。
我们现在假设tzOffset
为+05:30
。它可以是基于用户想要的任何其他时区。 new Date(epochDate).toISOString();
将日期转换为UTC时区。如何以toISOString()
格式获取日期,但也可以在所需的时区内获取日期
const tsConstruct = `${year}-${month}-${date}T${hour}:${min}:00${tzOffset}`;
const epochDate = Date.parse(tsConstruct);
scheduledTs = new Date(epochDate).toISOString();
答案 0 :(得分:1)
JavaScript的日期不存储时区信息。它只存储UNIX EPOCH的毫秒数。然后,根据您是否使用UTC方法,它将以UTC或当地时间返回日期和时间。
您必须根据指定的时区将日期和时间更改为UTC或本地时间,然后将其存储在Date对象中。但是,当然,要在另一个与本地或UTC不同的时区显示存储时间,您必须自己进行转换,因此,正如@RuChengChong建议的那样,使用辅助库momentjs
。