2017-05-31 78 views
0

我在使用Date.parse比較日期格式時遇到問題: 05/31/2017 10:50 AM(IST)和20170531 003837.000(EST)。任何導致這個?使用JavaScript比較不同日期格式

//Capture input for debug 
var Outlmd = "05/31/2017 10:50 AM"; 
var Outlsr = "20170531 003837.000"; 
//Convert to internal format - milliseconds since epoch 
d1 = Date.parse(05/31/2017 10:50 AM); 
d2 = Date.parse(20170531 003837.000); 

if(d1 > d2) { NewTempDate = lmd; } else { NewTempDate = lsr; } 
+0

//捕獲輸入以進行調試 var Outlmd =」05/31/2017 10:50 AM「; var Outlsr =「20170531 003837.000」; //轉換爲內部格式 - 自紀元以來的毫秒數 d1 = Date.parse(05/31/2017 10:50 AM); d2 = Date.parse(20170531 003837.000);如果(d1> d2){ NewTempDate = lmd;其他{ NewTempDate = lsr; –

+1

你面臨的問題是什麼?添加代碼在你的問題不作爲評論 – Colwin

+1

https://momentjs.com/ – Phil

回答

-1

你忘內Date.parse報價

Date.parse('05/31/2017 10:50 AM')

更新 請考慮下面的代碼:

//Capture input for debug 
var lmd = "05/31/2017 10:50 AM"; 
var lsr = "2017-05-31T00:45:25-0400"; 
//Convert to internal format - milliseconds since epoch 
d1 = Date.parse(lmd); 
d2 = Date.parse(lsr); 
if(d1 > d2) { NewTempDate = lmd; } else { NewTempDate = lsr; } 

請注意,LMD和LSR應該是可解析沒有額外空格的數據字符串:「2017-05-31T00:45:25-0400」不是「2017-05-31T00:45 :25-0400「

+0

//捕獲輸入的調試 var Outlmd =「05/31/2017 10:50 AM」; var Outlsr =「20170531 003837.000」; //轉換爲內部格式 - 自紀元以來的毫秒數 d1 = Date.parse(05/31/2017 10:50 AM); d2 = Date.parse(20170531 003837.000);如果(d1> d2){ NewTempDate = lmd;其他{ NewTempDate = lsr; } –

+0

嗨Kosh我想通過日期作爲參數如下: //捕獲輸入調試 var lmd =「05/31/2017 10:50 AM」; var lsr =「20170531 003837。000" ; //轉換爲內部格式 - 因爲曆元毫秒 D1 = Date.parse(LMD); D2 = Date.parse(LSR); 如果(D1> D2){ NewTempDate = LMD; }其他{ NewTempDate = LSR; } –

+0

這是確定的,但'20170531 003837.000'是不是一個有效的日期格式它不能分析 –