小程序ios上时间为NaN
发布于 5 年前 作者 xiulan19 8032 次浏览 来自 官方Issues

后台提供的时间格式是:2019-09-19T01:18:13.000+0000,我这边转换的格式代码为:

const formatDate = (date) =>{

var time = new Date(date);

var y,m,d,h,min,s;

y = time.getFullYear();

m = formatNumber(time.getMonth()+1);

d = formatNumber(time.getDate());

h = formatNumber(time.getHours());

min = formatNumber(time.getMinutes());

s = formatNumber(time.getSeconds());

return `${y}/${m}/${d} ${h}:${min}:${s}`

}

function formatNumber(n){

var time = n.toString()

return time < 10 ? “0”+n : n

}

网上说是替换 ‘-’ 为 ‘/’, date.replace(/\-/g, “/”) ,

但是试过之后都没有用,请各位看看是否能帮解决一下

5 回复

问题解决方案,1:使用common.js进行转化,想知道原理可以去看源码,我也没看过,哈哈哈2:后台给出的时间为 " 2019-09-19T01:18:13.000+0000",前端将时间转化为" 2019/09/19 01:18:13",然后再转化成时间戳+8个小时(中国标准时间跟美国时间相差8个时区,不要问我为什么,谁叫电脑是美国人发明的尼),接着再将时间戳转化为中国标准时间,搞定!!!!!!

楼主解决没

解析日期还是建议后台统一使用Unix时间戳,这样不会存在平台差异。

用正则匹配把 2019-09-19T01:18:13.000+0000 匹配成 2019/09/19 01:18:13.000+0000 再new Date()就好了

回到顶部