欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

开发多客户端网页,ios和浏览器显示Date转成的dateString,会出现NaN字符

程序员文章站 2022-03-03 11:55:42
像new Date(‘2020-07-06 16:00:00’)或者new Date(‘2020-07-06T16:00:00.000+0000’),这种Date就会NaN字符**解决方案:**只有let date = new Date(‘2020-01-06T16:00:00’),这种date转成的字符串,在ios上显示才不会出现NaNdate = new Date(‘2020-07-06T16:00:00’) 转成字符串为’2020-07-06 16:00:00’,这个时间原则上来说是不对的,但是i...

像new Date(‘2020-07-06 16:00:00’)或者new Date(‘2020-07-06T16:00:00.000+0000’),这种Date就会NaN字符

解决方案:只有let date = new Date(‘2020-01-06T16:00:00’),这种date转成的字符串,在ios上显示才不会出现NaN

date = new Date(‘2020-07-06T16:00:00’) 转成字符串为’2020-07-06 16:00:00’,这个时间原则上来说是不对的,但是ios会自动识别并且
加8小时,变成东八区时间’2020-07-07 00:00:00’来显示;

因为是多客户端网页,可能是ios,android,web,考虑到android和web并不会自动帮这个date加8小时,所以要检测客户端,若不是ios,则需要加8小时

//reachDate: new Date(),
add8Hour(date) {
         date.setHours(date.getHours() + 8);
        return date;
      },
      
//res[prop] = '2020-07-06T16:00:00.000+0000' 0时区日期字符串
let dateStr= res[prop].split('.')[0];
//this.reachDate 更改会触发监听转化成string 给this.reachDateString 来显示
this.reachDate = getType() !== 'ios' ? this.add8Hour(new Date(dateStr)) : new Date(dateStr);

本文地址:https://blog.csdn.net/qq_38648458/article/details/107176084