0

入力は1303出力でなければなりませんMarch 2013javascriptで可能ですか? 特にmoment.jsを探してみましたが、1980が返されます

ここにjsfiddleがあります http://jsfiddle.net/4eG7q/

4

3 に答える 3

3
var input = "1303";
var date = moment(input, 'YYMM').format("YYYY - MMMM");

フィドル

于 2012-08-10T07:21:16.330 に答える
1

1303 が 2000 年の 13 年目とその年の 03 月を意味すると仮定すると、それを分析して、次のような単純な JavaScript の文字列に変換できます。

var input = 1303;
var year = Math.floor(input / 100);
var month = input % 100;

var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];

var output = months[month - 1] + " " + (2000 + year);

実際のデモ: http://jsfiddle.net/jfriend00/Ve4VH/

于 2012-08-10T07:16:49.393 に答える
-1
new Date('1303'
.replace(/(\d{2})(\d{2})/, '$2/01/20$1'))
.toString()
.replace(/^.*? (.*?) .*? (.*?) .*?$/, '$1 $2');

これにより、2013 年 3 月ではなく 2012 年 3 月が表示されますが、より安価です :)

于 2012-08-10T07:54:53.233 に答える