如何在javascript中获取时区的当前日期
Posted
技术标签:
【中文标题】如何在javascript中获取时区的当前日期【英文标题】:How to get current date for timezone in javascripts 【发布时间】:2021-12-16 23:53:35 【问题描述】:我的时区模式格式如下“2021-10-29T18:01:23+07:00”, 所以我想得到与上面相同时区的当前时间,有人可以帮我解决这个问题吗,
我试过这段代码,但它不起作用
new Date().toGMTString()
非常感谢。
【问题讨论】:
this maybe? 【参考方案1】:一般来说,我建议您研究 MomentsJS。在使用 Date 时非常有帮助。它带有格式功能以及您可以安全地添加或减少日期的功能。
MomentJS 文档:https://momentjs.com/
【讨论】:
【参考方案2】:使用原生 Date
方法,您可以获得的最接近的方法是使用:
new Date().toISOString() // '2021-11-02T13:12:26.229Z'
但这会返回 GTM 时间,要以您指定的模式获取本地时间,您必须自己格式化:
function formatDateString(date)
//Function to format numbers (prepending leading zero and adding sign)
const f = (n, sign = false) => (sign ? (n < 0 ? "-" : "+") : "") + n.toLocaleString('en-US', minimumIntegerDigits: 2, useGrouping: false );
//Compute Date, Time and Zone
const d = `$date.getFullYear()-$f(date.getMonth() + 1)-$f(date.getDate())`;
const t = `$f(date.getHours()):$f(date.getMinutes()):$f(date.getSeconds())`;
const z = `$f(-date.getTimezoneOffset() / 60, true):00`;
//Return it all together
return `$dT$t$z`;
var mydate = new Date();
console.log(mydate.toISOString());
console.log(formatDateString(mydate));
或者您可以使用 3rd 方库,例如 MomentJS。
【讨论】:
以上是关于如何在javascript中获取时区的当前日期的主要内容,如果未能解决你的问题,请参考以下文章