记录js new Date日期处理的一个坑
记录js日期处理的一个坑
当前时区为北美东部时区时,
new Date('2019-4-1')
new Date('2019-04-01')
结果是相关一个月的。
如下图
new Date('2019-04-01')
得到的日期居然是上个月
2019-03-31 20:00:00
原因没有深入研究
大概猜测可能是
new Date('2019-04-01'),实际对应的时间是2019-04-01 00:00:00 0时区。
然后转换为本地-4时区,就出现2019-03-31 20:00:00
得到的月份自然是上个月。
正确的做法
new Date('2019-4-1')
new Date(2019,3,1,0,0,0)
注意new Date(year,mon,day,hour,min,sec)中,mon月份是从0开始的,0表示1月,11表示12月。其他都正常。
作者:朱鹏飞 关注公众号(一级码农)回复“加群”,自动加入IT互联网技术微信交流群
个人博客:https://www.cnblogs.com/zhupengfei/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。