Javascript change date format from YYYY-MM-DD HH:MM:SS to MM-DD-YYYY
本问题已经有最佳答案,请猛点这里访问。
我想把
例子:我有一个字符串,它以这种格式表示日期:
我想用javascript把这个字符串改成
有图书馆吗?还是应该只使用javascript?
1 2 3 4 5 | function change(time) { var r = time.match(/^\s*([0-9]+)\s*-\s*([0-9]+)\s*-\s*([0-9]+)(.*)$/); return r[2]+"-"+r[3]+"-"+r[1]+r[4]; } change("2013-06-15 03:00:00"); |
演示:http://jsfiddle.net/abc123/f6k3h/1/
Javascript:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | var d = new Date(); var c = new Date('2013-06-15 03:00:00'); alert(formatDate(c)); alert(formatDate(d)); function formatDate(d) { var month = d.getMonth(); var day = d.getDate(); month = month + 1; month = month +""; if (month.length == 1) { month ="0" + month; } day = day +""; if (day.length == 1) { day ="0" + day; } return month + '-' + day + '-' + d.getFullYear(); } |
由于这不使用regex,您会注意到一些奇怪的地方….示例:
1 | d.getMonth() + 1 |
这是因为GetMonth索引为0….
1 2 3 4 5 6 | day = day +""; if (day.length == 1) { day ="0" + day; } |
这是因为小时、秒、分钟都在1位数时返回1位数…这使它们返回前导0。如果需要,可以对月和日执行相同的操作。
参见Moment.js.。我觉得它很有用网址:http://momentjs.com/