我需要将 datetime-local
选择器的默认值设置为当前本地时间。 Native JS 好像默认是本地时间输出:
new Date($.now()); // "Sat Nov 12 2016 22:36:52 GMT+1100 (AEDT)"
但是像 toISOString()
这样的函数以 UTC 输出,虽然我可以在本地提取单个组件,但我真的不想摆弄填充等。所以我使用 moment.js 尝试这个:
moment().local().format(); // "2016-11-12T22:34:05+11:00"
太棒了!现在我只需要稍微调整一下格式:
moment().local().format('YYYY-MM-DThh:mm'); // "2016-11-12T10:39"
Waaaaaait。现在它再次使用 UTC,即使我指定的是本地时间。
在这种特殊情况下,我可以使用字符串操作来删除日期时间选择器的结尾,但我肯定会达到以任意格式输出本地时间的地步。我在这里遗漏了什么吗?
最佳答案
您的第二个示例不是 UTC,它只是使用 12h 格式。
hh
= 12h,HH
= 24h。试试这个:
moment().local().format('YYYY-MM-DTHH:mm')
关于javascript - Moment.js 在本地格式化,直到我指定格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40562518/