使用时间对象Date中的一些小问题
1. 众所周知getMonth()获取的月份是需要+1的
var d = new Date() // 实例化一个时间对象 d.getMonth() // 调用时间对象获取当前月份信息,(今天是2020/9/17),故而输出8,则今天是九(8+1)月中的一天 d.getDate() // 获取日期 输出:17
2.但是"2020-09-17" 和 "2020/09/17" 转换成时间戳会存在八小时的差异可能少有人会注意到
// 1. 首先直接转标准国内时间就能看出相差了八个小时 new Date('2020-09-17') // Thu Sep 17 2020 08:00:00 GMT+0800 (中国标准时间) new Date('2020/09/17') // Thu Sep 17 2020 00:00:00 GMT+0800 (中国标准时间) // 2.其次可以将它们都转化为时间戳来进行比较,也可以得出这个结论 new Date('2020-09-17').getTime() // 1600300800000 new Date('2020/09/17').getTime() // 1600272000000 // 二者相减的结果恰好为 八个小时 1600300800000 - 1600272000000 = 28800000 = 8 * 60 *60 *1000
3. IOS上使用Date对象转换时间戳的时候是不支持"-"中横线连接的,必须转换成"/"斜杠连接才能成功转换,否则会报错