前言
今天做了一个需求,要比对当前和服务器给的时间,服务器给的时间格式是
"2022-6-14 10:03:45",
使用 new Date(str)获取时间戳时,H5和安卓都是正常的,只有IOS平台显示是NAN。
网上搜素了一下,原因是 IOS系统只识别 " / " 不识别 " - ".
解决
知道了原因我们就好解决问题了。
首先判断当前是否是ios平台,如果是正则替换,否则的话展示原来的格式
var date = "2022-6-14 10:03:45"
let platform = uni.getSystemInfoSync().platform
// 判断当前是否是`ios`平台,如果是正则替换,否则的话展示原来的格式
const goodsDate = platform == 'ios' ? new Date(date.replace(/-/g, '/')) : new Date(date)
//解决
var newDate = new Date(goodsDate);