最近在写小程序的时候碰到的一个小问题
-
在ios中是不识别"yyyy-MM-dd HH:mm:ss"格式的时间类型, -
自然只能改成"yyyy/MM/dd HH:mm:ss"将时间格式中的'-'改成'/'
项目因为用到时间转时间戳,于是直接使用date.parse()转换得到时间戳
// date和time是之前保存的,date为“yyyy-MM-dd”格式
// time为“HH:mm:ss”格式
date.parse(date + " " + time);
在模拟器和android手机上也能正常运行。 但是,跑到ios上就出问题了,调试之后发现时间转换后得到的是NaN 查过之后才知道原来,在ios上是不识别“yyyy-MM-dd HH:mm:ss”格式的时间的,它的日期需要通过“/”来分隔 然后,代码稍作修改:
var dateTime = (date + " " + time).replace(/-/g, "/");
date.parse(dateTime )
replace很好理解,而其中的第一个参数/-/g属于正则,/-/表示匹配“-”字符,后面的g匹配所有的“-”,所以这一句代码的意思即,将所有的“-”替换为“/”,即时间格式替换为“yyyy/MM/dd HH:mm:ss”
欢迎大家一起讨论前端知识,一起进步,一起掘墓