如何在 JavaScript 中從日期中減去天數?
在本教程中,我們將學習如何在 JavaScript 中從日期中減去天數。要從 JavaScript 日期物件 中減去天數,請使用 setDate() 方法。在其中,獲取當前的天數並減去天數。JavaScript 日期 setDate() 方法根據本地時間設定指定日期的月份中的日期。
以下是我們可以用來在 JavaScript 中從日期中減去天數的方法:
-
使用 setTime() 和 getTime() 方法
-
使用 setDate() 和 getDate() 方法
讓我們逐一詳細討論它們。
使用 setTime() 和 getTime() 方法
setTime() 和 getTime() 方法用於不同的目的。讓我們詳細討論這兩種日期方法:
setTime() − setTime() 方法透過從或新增到 1970 年 1 月 1 日午夜來以毫秒為單位設定日期和時間。此方法接受以毫秒為單位的引數,這些引數進一步新增到或從 1970 年 1 月 1 日減去,並且它也返回從 1970 年 1 月 1 日到物件日期或日期的毫秒形式的值。
getTime() − getTime() 方法返回一個數字,該數字指定從 1970 年 1 月 1 日午夜到我們正在減去或新增的日期的毫秒數。它不接受任何型別的變數或引數。
語法
將遵循以下語法來使用日期物件的 setTime() 和 getTime() 方法:
Date.setTime(milliseconds); Date.getTime();
讓我們透過使用程式示例來實際理解它們。
-
步驟 1 − 在演算法的第一步中,我們需要使用 JavaScript Date 類宣告一個 JavaScript 日期物件。
-
步驟 2 − 在下一步中,我們首先在螢幕上向用戶顯示當前日期,然後為按鈕的 onclick 事件定義一個回撥函式。
-
步驟 3 − 在最後一步中,我們將編寫回調函式的主體,其中包含使用 setTime() 和 getTime() 方法減去日期的邏輯以及顯示結果日期的邏輯。
示例
以下示例將說明 setTime() 和 getTime() 方法在 JavaScript 中減去日期的實際用法:
<!DOCTYPE html> <html> <body> <h2>Subtract days from a date in JavaScript</h2> <p id="result1"></p> <p>Click below button to subtract 10 days to the Today's Date</p> <button onclick="display()">click to subtract days</button> <p></p> <p id="result2"></p> <script> var date = new Date(); var result1 = document.getElementById("result1"); var result2 = document.getElementById("result2"); result1.innerHTML = "Today's Date: " + date + "</b><br>"; function display() { var day = date.getTime() - (10 * 24 * 60 * 60 * 1000); date.setTime(day); result2.innerHTML += "The day we get after subtracting is: " + date; } </script> </body> </html>
在上面的示例中,我們使用了 JavaScript 的 setTime() 和 getTime() 方法從日期中減去天數。只需單擊按鈕,您就可以獲取有關從當前日期減去的天數的所有詳細資訊。在此示例中,我們從當前日期或日期中減去 10 天。
使用 setDate() 和 getDate() 方法
在開始實現之前,讓我們瞭解 setDate() 和 getDate() 方法執行什麼功能:
setDate() − setDate() 方法將 JavaScript 中日期物件的月份中的日期設定為指定日期。它接受日期作為引數,並將日期物件的日期設定為括號內傳遞的相同日期。另一方面,它還返回一個介於 1 和 31 之間的數字,表示月份中的日期。
getDate() − getDate() 方法僅返回月份中的日期,該日期範圍也從 1 到 31,類似於 getTime() 方法。它不接受任何型別的引數。
語法
以下語法可用於在 JavaScript 中實現 setDate() 和 getDate() 方法:
Date.setDate(numberOfDay); Date.getDate();
讓我們藉助程式碼示例來理解它:
注意 − 此示例和上一個示例的演算法幾乎相同,演算法中存在細微差別。您需要進行的更改是,將上一個示例中的 setTime() 和 getTime() 方法分別替換為 setDate() 和 getDate() 方法。
示例
以下程式碼示例將說明 setDate() 和 getDate() 方法在從日期中減去天數方面的實際實現:
<!DOCTYPE html> <html> <body> <h2>Subtract days from a date in JavaScript</h2> <p id="result1"></p> <p>Click the below button to subtract 12 days to the Today's Date</p> <button onclick="display()">click to subtract days</button> <p id="result2"></p> <script> var date = new Date(); var result1 = document.getElementById("result1"); var result2 = document.getElementById("result2"); result1.innerHTML = "<b>Today's Date: " + date + "</b><br>"; function display() { var day = date.getDate() - 12; date.setDate(day); result2.innerHTML += "The day we get after subtracting is: " + date; } </script> </body> </html>
在此示例中,我們使用了 JavaScript 的 setDate() 和 getDate() 方法從當前日期中減去 12 天。在上面的程式碼中,getDate() 方法獲取當前日期,然後從中減去給定的天數;之後,setDate() 方法使用減法後返回的結果日期設定 Date 物件。
在本教程中,我們瞭解了在 JavaScript 中從日期中減去天數的方法。我們透過為每個方法實現程式碼示例,以充分的實際理解討論了兩種方法。下次需要從日期中減去天數時,可以使用這些方法。