前几天发生了一个时间的bug,接口传递的生日莫名其妙少了一天,后来定位是用户手机是洛杉矶时间,我们日期格式为yyyy-MM-dd,所导致。

let date = new Date('2020-02-20')
console.log(date) // Wed Feb 19 2020 16:00:00 GMT-0800 (北美太平洋标准时间)

看上面的?,传参是2020年2月20日,结果new Date后确少了一天,变成了19日。

修复后统一将yyyy-MM-dd格式改为yyyy/MM/dd

let date = new Date('2020/02/20')
console.log(date) // Thu Feb 20 2020 00:00:00 GMT-0800 (北美太平洋标准时间)

总结:new Date参数为string时一定需要注意格式,尽量使用/


wuxx
40 声望0 粉丝

coding路上