js new Date()不带时分秒时,时间变了 问题解决

//先把电脑系统时间的 时区 调到别的时间一下如 夏威夷 UTC-10:00
//在浏览器的Console里运行如下代码,getMonth是从0开始的,所以要+1

var d=new Date("2019-07-01")
console.log(d)
console.log(d.getFullYear()+"年"+(d.getMonth()+1)+"月"+d.getDate()+"日")

运行以后,居然得到时间是6月30号.

解决办法,判断是要格式化的字符是否有:冒号,如果没有在后面加 00:00:00

var d2=new Date("2019-07-01 00:00:00") //后面加00:00:00即可解决
console.log(d2)
console.log(d2.getFullYear()+"年"+(d2.getMonth()+1)+"月"+d2.getDate()+"日")

原文地址:https://www.cnblogs.com/q149072205/p/11164634.html