简介 在项目中遇到苹果浏览器显示时间为NAN,安卓手机没有问题,出现这种问题的原因是浏览器内核支持时间格式不一致导致的苹果手机时间显示NaN的问题,该文章介绍几种解决这个问题的方法。
1.采用正则替换的方法
这种格式就会出现NAN
new Date("2017-04-28 23:59:59")
换成如下方式就正常了,就是‘-’换成‘/’
new Date("2017/04/28 23:59:59")
// 改
var time = "2017-04-28 23:59:59"
new Date(time.replace(/\-/g, '/'))
如果你的时间格式不是你想要的请使用:time.replace(/-/g, “/”)替换“-”为“/”或者time.replace(/./g, “/”)替换“.”为“/“
若以上方法还是没有解决你的问题,在ios上仍然显示为NAN
2.使用moment.js
vue中先引入npm install moment --save
import moment from ‘moment/moment‘ let time = moment(date).format(‘YYYY/MM/DD HH:mm:ss‘) console.log(transTime)
输出
2018/09/01 09:10:41
3.服务端直接已字符串的格式返回
(例如:2020-05-01 20:10:02) 不建议采用此方法
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。