最近有一个h5的项目,js写字符串转时间的时候,在safari浏览器总会返回NaN,让人很摸不清头脑。。。
代码是这样的:
function StrToTime(str){
//格式:2017-12-21 16:52:00
var timestamp2 = Date.parse(new Date(str));
return (timestamp2 / 1000);
}
其实在普通平台,时间字符串的格式是这样的:"2018-01-01 12:34:56"
但是在Safari平台,时间字符串的格式为"2018/01/01 12:34:56",并且这种格式在普通平台也是可以被接受的。
我们使用一个正则表达式"replace(/\-/g, "/")"就可以把第一种转化为第二种
代码变成这样:
function StrToTime(str){
//格式:2017-12-21 16:52:00
var timestamp2 = Date.parse(new Date(str.replace(/\-/g, "/")));
return (timestamp2 / 1000);
}
完美通过