.day()使用Moment.js返回错误的某一天

时间:2015-02-02 17:31:16

标签: javascript datetime momentjs

我使用Moment.js来解析字符串并分别获取日,月和年:

var date = moment("12-25-1995", "MM-DD-YYYY");
var day = date.day();        

但是,day不是25 - 它是1.什么是正确的API方法?

3 个答案:

答案 0 :(得分:75)

使用的正确函数是.date()

date.date() === 25;

.day()为您提供一周中的某一天。这与日期对象上的javascript&n .date().day()函数的工作方式类似。

如果您想获得月份和年份,可以使用.month().year()功能。

答案 1 :(得分:3)

这是如何获取部分日期:

var date = moment("12-25-1995", "MM-DD-YYYY");

if (date.isValid()) {

    day = date.date(); 
    console.log('day ' + day);

    month = date.month() + 1;
    console.log('month ' + month);

    year = date.year(); 
    console.log('year '+ urlDateMoment.year());

} else {
    console.log('Date is not valid! ');
}

答案 2 :(得分:1)

您可以使用moment().format('DD')来获取月份中的某天。

var date = +moment("12-25-1995", "MM-DD-YYYY").format('DD'); 
// notice the `+` which will convert 
// the returned string to a number.

祝你好运...