javascript - 使用 moment 来操作日期和时间

标签 javascript momentjs

我使用 moment 获取前一天,如下所示:

var start_time = moment().tz("America/Los_Angeles").subtract(1, 'day').format('YYYY/MM/DD-00:00:00');

输出如下:

2015/01/29-00:00:00

现在我想使用 start_time 执行以下操作:

2015/01/29-01:00:00
2015/01/29-02:00:00
2015/01/29-03:00:00
2015/01/29-04:00:00
2015/01/29-05:00:00

我尝试过以下方式:

for(var i = 0; i<6; i++){
    console.log(moment(start_time,"YYYY/MM/DD-HH:mm:ss").add(1,'hour'));
}

但这行不通。我该怎么做?

最佳答案

你几乎成功了。

for(var i = 0; i<6; i++){ //make sure to actually use i!
    console.log( //expects a string
        moment(start_time,"YYYY/MM/DD-HH:mm:ss") //this works
        .add(1,'hour') //this will return a moment object, not a string
    );
}

所以改成

for(var i = 0; i<6; i++){
    console.log(
        moment(start_time,"YYYY/MM/DD-HH:mm:ss")
        .add(i,'hour') //changed to i
        .format('YYYY/MM/DD-HH:mm:ss') //make it a string
    );
}
// Prints
// 2015/01/29-00:00:00
// 2015/01/29-01:00:00
// 2015/01/29-02:00:00
// 2015/01/29-03:00:00
// 2015/01/29-04:00:00
// 2015/01/29-05:00:00

关于javascript - 使用 moment 来操作日期和时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28233759/

相关文章:

javascript - 如何检查数组是否包含对象

Javascript - 在 Typeahead 中显示名称并获取 ID

javascript - 使用 grunt 和wiredep 构建应用程序时更改库文件

javascript - 将日期和时间字符串转换为带有时区的 moment.js

javascript - 在 Heroku 上使用 moment.js 时遇到问题

javascript - 时刻时区,设置默认时区

javascript/jquery 范围让我难住了

javascript - 等待异步函数

javascript - Firebase(Web)无法让 orderByChild 工作

javascript - 如何将一系列小时调整为首选时区?