您如何转换欧洲字符串日期" 13/05/2015 12:00:00 PM"到JavaScript Date对象?请记住,Date构造函数需要首先出现年份或月份,而不是当天。
我们需要在创建日期之前交换日期和月份,但是我采用比字符串操作更好的方法,并且我不倾向于使用第三方库。
想法?
答案 0 :(得分:0)
可能有更优雅的方法,但您可以使用split在十几行代码中实现它。它仍然是字符串操作,所以它可能不是你要求的。
别忘了再读一遍JS Dates的工作原理(重要的是JS中的月份从0到11)。
我为您制作的一些代码:
var euroStringDate = "13/05/2015 12:00:00 PM";
var splitDateTime = euroStringDate.split(' ',2); //separate date and time
var splitDate = splitDateTime[0].split("/"); //separate each digit in the date
var splitTime = splitDateTime[1].split(":"); //separate each digit in the time
var day = splitDate[0];
var month = splitDate[1] - 1; //JS counts months from 0 to 11
var year = splitDate[2];
var hour = splitTime[0];
var min = splitTime[1];
var sec = splitTime[2];
var d = new Date(year,month,day,hour,min,sec,0); //place the pieces in the correct order
这里是jsfiddle。