// 2022年9月1日 00:00:00
console.log(new Date()); : Thu Sep 01 2019 08:00:00 GMT+0800 (中国标准时间)
console.log(JSON.stringify(new Date())); : "2022-08-31T16:00:00.000Z"
常见问题
1、使用字符串 new Date 时,不带时间部分 错误
// 2022年9月1日 08:00:00
console.log(new Date('2022-09-01')); : Thu Sep 01 2022 08:00:00 GMT+0800 (中国标准时间) ❌
// 2022年9月1日 00:00:00
console.log(new Date('2022-09-01 00:00:00')); : Thu Sep 01 2022 00:00:00 GMT+0800 (中国标准时间)
2、时间作为 api 参数
直接作为 query 参数,可能出现转换问题,所以不推荐
// 2022年9月1日 00:00:00
// 直接作为 query 参数 , + 号可能会被 处理成 %20
Thu%20Sep%2001%202022%2000:00:00%20GMT%200800%20(中国标准时间)
// 在转换回来 是
Thu Sep 01 2022 00:00:00 GMT 0800 (中国标准时间)
// 对比发现 丢失了 + 号
Thu Sep 01 2022 00:00:00 GMT+0800 (中国标准时间)
// 在转成 Date ,时区标识 (GMT+0800)会被截断,变成 2022年9月1日 08:00:00
body 参数 ,会转为JSON 0时区格式,就是 "2022-08-31T16:00:00.000Z" (2022年9月1日 00:00:00)