后台返回时间在移动端的时区转换问题

今天在移动端开发的时候,偶然发现了一个时区转换的小问题
后台返回的时间格式是:2021-03-16T08:41:42.68
最开始我直接new Date(),发现new完了也正常
直到今天测试的时候才发现ios系统上总是会多8小时(安卓系统未测试)
经过一番尝试,解决办法如下

// 转换后台返回的这种时间格式  2021-03-16T08:41:42.68
const time = '2021-03-16T08:41:42.68';
let myDate = time.slice(0,19).replace(/-/g, '/').replace(/T/, ' '); //去掉毫秒(如果不去掉毫秒,可能ios会返回Invalid Date)
myDate = new Date(myDate + ' +0800'); //+0800前面必须加空格!!!
return myDate

猜测可能是手机组编写 webview 组件的时候,没给它设置时区
总之,YYYY/MM/DD HH:MM:SS+0800
我们要按照这种时间格式来 new Date,才不会有时区的问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值