【问题标题】:Add 30 second intervals to UTC string leveraging MomentJS利用 MomentJS 向 UTC 字符串添加 30 秒间隔
【发布时间】:2017-07-13 22:00:33
【问题描述】:

我在“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 知识将不胜感激,谢谢!

【问题讨论】:

    标签: javascript arrays momentjs


    【解决方案1】:

    你可以简单地:

    • 使用moment.utc解析您的输入字符串
    • 使用add 增加 30 秒
    • 使用format 将矩对象转换为所需格式

    请注意,如 Mutability 指南中所述:

    Moment.js 中的 moment 对象是可变的。这意味着加、减或设置等操作会改变原始矩对象。

    这是一个工作示例:

    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);
    &lt;script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"&gt;&lt;/script&gt;

    【讨论】:

      猜你喜欢
      • 2015-12-28
      • 2014-04-28
      • 1970-01-01
      • 2021-04-26
      • 1970-01-01
      • 2019-02-22
      • 2021-01-21
      • 1970-01-01
      • 2019-12-09
      相关资源
      最近更新 更多