1. 程式人生 > >js中使用new Date("XXXX-XX-XX")結果為invalid date或為null的解決辦法

js中使用new Date("XXXX-XX-XX")結果為invalid date或為null的解決辦法

問題: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);