我在“ 2017-07-11T05:02:36.207465”中有一个UTC字符串,我想一次递增地添加30秒,长度小于或等于1500(可以是任何长度)。
该循环的结果将存储在一个名为duration的数组中。
我想利用MomentJS完成格式化并添加30秒间隔。
这是我的初步代码:
var utcstring = "2017-07-11T05:02:36.207465";
var duration = [];
for (var i = 0; i < 1500; i++) {
// moment(utcstring).format("h:mm:ss a");
// moment.add(30, 's');
// duration.push();
}
console.log(duration); // Should return: ["5:02:36 am", "5:03:06 am", "5:03:36 am", etc.]
感谢您的JavaScript和MomentJS知识!
最佳答案
您可以简单地:
使用moment.utc
解析输入字符串
使用add
加30秒
使用format
将矩对象转换为所需格式
请注意,如Mutability指南中所述:
Moment.js中的一下对象是可变的。这意味着加,减或设置之类的操作会更改原始矩对象。
这是一个工作示例:
var utcstring = "2017-07-11T05:02:36.207465";
var duration = [];
var m = moment.utc(utcstring);
for (var i = 0; i < 1500; i++) {
duration.push( m.format("h:mm:ss a") );
m.add(30, 's');
}
console.log(duration);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>