在JavaScript中将字符串转换为日期

如何在JavaScript中将字符串转换为日期? html

var st = "date in some format"
var dt = new date();

var dt_st= //st in date format same as dt

#1楼

var st = "26.04.2013";
var pattern = /(\d{2})\.(\d{2})\.(\d{4})/;
var dt = new Date(st.replace(pattern,'$3-$2-$1'));

输出将是: ide

dt => Date {Fri Apr 26 2013}

#2楼

不幸的是我发现 spa

var mydate = new Date('2014-04-03'); console.log(mydate.toDateString());

返回“ 2014年4月2日星期三”。 我知道这听起来很疯狂,可是某些用户会遇到这种状况。 code

防弹解决方案以下: orm

var parts ='2014-04-03'.split('-'); // Please pay attention to the month (parts[1]); JavaScript counts months from 0: // January - 0, February - 1, etc. var mydate = new Date(parts[0], parts[1] - 1, parts[2]); console.log(mydate.toDateString());


#3楼

function stringToDate(_date,_format,_delimiter)
{
            var formatLowerCase=_format.toLowerCase();
            var formatItems=formatLowerCase.split(_delimiter);
            var dateItems=_date.split(_delimiter);
            var monthIndex=formatItems.indexOf("mm");
            var dayIndex=formatItems.indexOf("dd");
            var yearIndex=formatItems.indexOf("yyyy");
            var month=parseInt(dateItems[monthIndex]);
            month-=1;
            var formatedDate = new Date(dateItems[yearIndex],month,dateItems[dayIndex]);
            return formatedDate;
}

stringToDate("17/9/2014","dd/MM/yyyy","/");
stringToDate("9/17/2014","mm/dd/yyyy","/")
stringToDate("9-17-2014","mm-dd-yyyy","-")

#4楼

若是您能够使用出色的时刻库(例如在Node.js项目中),则能够使用如下示例轻松地解析日期 htm

var momentDate = moment("2014-09-15 09:00:00");

并能够经过访问JS日期对象 对象

momentDate ().toDate();

#5楼

像ISO同样出色的ISO 8601日期字符串,仍然没有获得普遍支持。 ip

这是肯定要使用哪一种日期字符串格式的好资源: 资源

http://dygraphs.com/date-formats.html 字符串

是的,这意味着您的日期字符串可能与

"2014/10/13 23:57:52"而不是"2014-10-13 23:57:52"

相关文章
相关标签/搜索