如何在 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 中從日期中減去天數的方法。我們討論了兩種方法,並透過為每種方法實現程式碼示例來全面理解實踐。下次需要從日期中減去天數時,可以使用這些方法。

更新於: 2023 年 10 月 4 日

34K+ 次檢視

啟動您的 職業生涯

透過完成課程獲得認證

開始
廣告

© . All rights reserved.