我正在格式化一个日期,没有momentjs或任何其他库,只是纯JS。我想知道是否有办法用ES6简化这一点
let currentDate = new Date();
const videosInformation = {
time: currentDate.getHours() + ':' + currentDate.getMinutes(),
date: (currentDate.getMonth() + 1) + '/' + currentDate.getDate() + '/' + currentDate.getFullYear(),
gameId: Math.floor((Math.random() * 5000) + 1)
};
我在DOM中看到你使用类似renderSomething={`something: ${someObj}`}
所以你不必做renderSomething={"something: " + {someObj}}
有什么我应该用来做那种格式吗?
答案 0 :(得分:16)
ES2015中没有添加类似strftime
no的内容。 ECMAScript国际化规范ecma-402可以实现本地化时间:
let [date, time] = new Date().toLocaleString('en-US').split(', ');
const videosInformation = {
time,
date,
gameId: Math.floor((Math.random() * 5000) + 1)
};
哪会给你美国本地化的 2015年8月4日和 5:29:19 PM 或者如果你真的想要一个24小时的时钟:
new Date().toLocaleString('en-US', {hour12: false})
如果要删除秒数,那么你可以在时间上做一个子串。
您可以在MDT docs了解有关日期和时间的更多信息。