js中使用new Date("XXXX-XX-XX")結果為invalid date或為null的解決辦法
阿新 • • 發佈:2019-02-01
問題:js中使用new Date()方法,例如:new Date("2017-06-23 17:00:00")結果為 invalid date 或為 null。
錯誤原因:引數格式不規範,不能相容所有瀏覽器;
引數格式有以下5種:
new Date("month dd,yyyy hh:mm:ss");
new Date("month dd,yyyy");
new Date(yyyy,mth,dd,hh,mm,ss);
new Date(yyyy,mth,dd);
new Date(ms);
month:用英文表示月份名稱;
mth:用整數表示月份;
dd:表示一個月中的第幾天;
yyyy:四位數表示的年份;
hh:小時數;
mm:分鐘數;
ss:秒數;
ms:毫秒數;
解決方法:
var time = "2017-06-23 17:00:00";
time = time.replace(/-/g,':').replace(' ',':');
time = time.split(':');
var time1 = new Date(time[0],(time[1]-1),time[2],time[3],time[4],time[5]);
console.log("time1"+time1);