关于IOS端js日期的坑

今天在测试H5页面一个功能的时候,发现选择开始日期和结束日期后,校验日期并没有生效,直接通过了,逐步深入探索发现安卓端没有这个问题,IOS端有问题,这可不好调…只好alert大法,一步步打印,最后发现获取日期字符串时,居然是invalid date,问题出在

new Date(endTime).getTime()

经过万能的百度搜索后,才了解到,js的Date对象,在Safari中,只能兼容yyyy/MM/dd hh:mm:ss格式,而恰好我的字符串是yyyy-MM-dd hh:mm:ss,所以凉凉。
修复方案:
将日期字符串转换成/格式

var endTime = this.endDateStr.replace(/-/g,'/');

然后再创建Date对象,搞定~