0

次のような特定の日付があり、21-03-2013使用する月を取得したいとします。moment("04-03-2013","DD-MM-YYYY").format('MMMM');これにより、3 月が得られます。

さて、今日私が使っている日付moment().format('MM');は10月です。

名前の間のすべての月を取得するにはどうすればよいですか?

4

2 に答える 2

1

この関数は、「DD-MM-YYYY」形式の文字列を受け取り、その日付から現在までのすべての月を含む配列を返します

function getMonths(startDate){

    var startMonth = parseInt(startDate.split('-')[1], 10),
        endMonth = parseInt(moment().format('M'), 10),
        monthArray = [];

    if( startMonth < 1 ) return [];

    for( var i = startMonth; i != endMonth; i++ ){
        if( i > 12 ) i = 1;
        monthArray.push( moment(i, "M").format("MMMM") );
    }

    monthArray.push(moment().format('MMMM'));

    return monthArray;
}

getMonths("04-03-2013");
于 2013-10-22T05:30:57.880 に答える