js 解析时间
问题:在app中使用new Date()方法解析时间,安卓正常,IOS报错
例如:new Date("2018-10-16 17:00:00")结果为 invalid date
错误原因:参数格式不规范,不能兼容所有浏览器;
new Date()参数格式有以下5种:
new Date("month dd,yyyy hh:mm:ss"); new Date("month dd,yyyy"); new Date(yyyy,mth,dd,hh,mm,ss); new Date(yyyy,mth,dd); new Date(ms);
month:用英文表示月份名称;
mth:用整数表示月份;
dd:表示一个月中的第几天;
yyyy:四位数表示的年份;
hh:小时数;
mm:分钟数;
ss:秒数;
ms:毫秒数;
所以可以将2018-10-16 17:00:00改为上述的格式,如下:
var time = "2017-06-23 17:00:00"; time = time.replace(/-/g,':').replace(' ',':'); // 注意,第二个replace里,是' ',中间有个空格,千万不能遗漏 time = time.split(':'); var time1 = new Date(time[0],(time[1]-1),time[2],time[3],time[4],time[5]);