繁体   English   中英

如何将字符串转换为日期格式

[英]How to convert string to date format

我有如下的字符串格式数据

Dec 26, 2014, 09:56 ET
Dec 31, 2014, 21:30 ET
Dec 30, 2014, 13:36 ET

我想以以下日期格式输出

26-12-2014 09:56:00
31-12-2014 21:30:00
30-12-2014 13:36:00

我尝试使用下面的代码,但是它给出了不同的值。 纠正我可以将字符串转换为日期的语法

str2date(input,"MMM dd, YYYY, HH:mm 'ET'")

如果您不想使用外部库,可以尝试一下

 <html> <head> <script type="text/javascript"> function addZero(i) { if (i < 10) { i = "0" + i; } return i; } function myDate () { var dateValue = new Date("Dec 26, 2014, 09:56"); var d = dateValue.getDate(); var m = dateValue.getMonth(); var y = dateValue.getFullYear(); var h = addZero(dateValue.getHours()); var mi = addZero(dateValue.getMinutes()); var s = addZero(dateValue.getSeconds()); var newDate = (d + '-' + m + '-' + y + ' ' + h + ':' + mi + ':' +s); document.write(newDate); } </script> </head> <body> <script> myDate(); </script> </body> </html> 

使用图书馆是您最好的选择。 以下是使用MomentJS的示例;

 var input = [ 'Dec 26, 2014, 09:56 ET', 'Dec 31, 2014, 21:30 ET', 'Dec 30, 2014, 13:36 ET' ]; var output = input.map(function(dateString) { return moment(dateString, "MMM DD, YYYY, HH:mm ZZ").format('DD-MM-YYYY HH:mm:ss'); }); console.log(JSON.stringify(output, undefined, ' ')); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js"></script> 

输出:

[
  "26-12-2014 04:56:00",
  "31-12-2014 16:30:00",
  "30-12-2014 08:36:00"
]

嗨,您可以使用Moment.js轻松实现此目的

 <html> <head> <script src="http://momentjs.com/downloads/moment.min.js"></script> </head> <body> <script> var inputDate = 'Dec 26, 2014, 09:56:00'; var formatString = 'DD-MM-YYYY hh:mm:ss'; var outputDate = moment(inputDate).format(formatString); document.write(outputDate); </script> </body> </html> 

 <script> function strDate(str){ var m = str.match(/(\\w+) (\\d{1,2}), (\\d{4}), (\\d{1,2}):(\\d{1,2})/); var month = []; month['Jan'] = 1; month['Feb'] = 2; month['Mar'] = 3; month['Apr'] = 4; month['May'] = 5; month['Jun'] = 6; month['Jul'] = 7; month['Aug'] = 8; month['Sep'] = 9; month['Oct'] = 10; month['Nov'] = 11; month['Dec'] = 12; return (m[2] + '-' + month[m[1]] + '-' + m[3] + ' ' + m[4] + ':' + m[5] + ':00'); } alert(strDate("Dec 26, 2014, 09:56 ET")); </script> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM