Javascript将日期从短格式转换为长格式
我正在使用以下代码:Javascript将日期从短格式转换为长格式,javascript,date,Javascript,Date,我正在使用以下代码: var date="May-02-2012"; var startDate = date; var tmp = startDate.split('-'); tmp.splice(1, 0, ','); var convertedStartDate = new Date(tmp.join(' ')); var month = convertedStartDate.getMonth() + 1 var day = convertedStartDate.getDate(
var date="May-02-2012";
var startDate = date;
var tmp = startDate.split('-');
tmp.splice(1, 0, ',');
var convertedStartDate = new Date(tmp.join(' '));
var month = convertedStartDate.getMonth() + 1
var day = convertedStartDate.getDate();
var year = convertedStartDate.getFullYear();
var shortStartDate = ('0' + day).slice(-2) + "-" + ('0' + month).slice(-2) + "-" + ('0' + year).slice(-2);
return(shortStartDate);
上述代码允许我将2012年5月2日转换为2012年5月5日
但是,我现在需要将其从2012年5月5日转换回2012年5月2日
但是我无法计算。如果您不介意使用一个库,我发现这个库非常好用:我推荐。如果格式符合您指定的格式,就不太难了。下面没有做任何测试,因此如果格式错误,可能会出错。但是如果你给它错误的格式,任何函数也会如此
var s = '02-05-12';
function toWeirdDate(s) {
var months = 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec'.split(' ');
var bits = s.split('-');
return months[--bits[1]] + '-' + bits[0] + '-20' + bits[2];
}
alert(toWeirdDate(s)); // May-02-2012
在Google代码网站上查看date.js: