簡體   English   中英

用JavaScript比較不同格式的日期

[英]Comparing Dates with different formats in Javascript

我正在嘗試比較2個在Javascript中具有2種不同格式的日期。

我數據庫中的日期是2013-04-21 (date1),數組中的日期在我的Chrome調試器中以以下格式打印: Sun Apr 21 2013 15:37:05 GMT-0400 (Eastern Daylight Time) (date2 )

我只想比較日期部分,而忽略時間: date1 == date2是true。

我該如何格式化日期,以便能夠比較它們?

任何幫助是極大的贊賞。

y = date2.getFullYear();
m = date2.getMonth()+1;
m = (m<10)? ('0'+m) : m;
d = date2.getDate();
d2 = y+'-'+m+'-'+d;

if (date1 == d2) {
  // do something
}
date1.toISOString().split("T")[0] == date2.toISOString().split("T")[0]

我們在這里必須更深入一點:我們必須區分存儲日期的字符串和可以存儲日期並使用日期進行計算的Date對象。

根據您的描述,我猜想date1實際上是字符串“ 2013-04-21”,而date2已經是Date對象。

您可以將date1轉換為日期對象:

date1AsObject = new Date("2013-04-21");

然后,您可以計算它們之間的差異:

diff = date2 - date1AsObject

結果將以毫秒為單位。

或者您可以將date2轉換為Crayon Violent建議的字符串:

y = date2.getFullYear();
m = date2.getMonth()+1;
d = date2.getDate();
date2AsString = y+'-'+m+'-'+d;

然后您可以比較兩個字符串。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM