Javascript将日期从短格式转换为长格式

时间:2012-06-05 03:54:25

标签: 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 year = convertedStartDate.getFullYear(); 
var shortStartDate = ('0' + day).slice(-2) + "-" + ('0' + month).slice(-2) + "-" + ('0' + year).slice(-2); 
return(shortStartDate);

上面的代码允许我将May-02-2012转换为02-05-12

然而,我现在需要将它从02-05-12转换回May-02-2012

但是我无法解决这个问题。

3 个答案:

答案 0 :(得分:1)

如果你不介意使用图书馆我发现这个图片工作得很好:http://www.datejs.com/

答案 1 :(得分:0)

答案 2 :(得分:0)

如果格式符合您的指定,则不会太难。以下不做任何测试,所以如果格式错误,可能会出错。但如果你给它的格式错误,那么任何函数也是如此。

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