我需要将datetime-local
选择器的默认值设置为当前本地时间。原生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"
Waaaaaaait。现在它再次出现在UTC中,即使我指定了本地。
在这种特殊情况下,我可以使用字符串操作来关闭日期时间选择器的结束,但我肯定会达到我想以任意格式输出本地时间的点。我在这里错过了什么吗?
答案 0 :(得分:6)
你的第二个例子不是UTC,它只是使用12h格式。
hh
= 12h,HH
= 24h。试试这个:
moment().local().format('YYYY-MM-DTHH:mm')