如何在 JavaScript 中從日期中減去分鐘?


在本教程中,我們將學習如何在 JavaScript 中從日期中減去分鐘。在開發應用程式時,程式設計師需要多次處理日期。所有 JavaScript 程式設計師都很幸運,因為 JavaScript 包含具有數百種不同方法的內建日期類。

在本教程中,我們將學習使用**原生 JavaScript**中的**日期物件**和**Moment JS**庫從日期中減去分鐘。

使用 getMinutes() 和 setMinutes() 方法

  • 在這種方法中,我們將建立一個新的日期物件,並使用**getMinutes()**方法從中提取分鐘。

  • 之後,我們將透過從日期中獲得的分鐘數中減去分鐘數來更新分鐘數。

  • 下一步,我們將使用日期類的**setMinutes()**方法將新的分鐘數設定為日期物件。

使用者可以按照以下語法使用getMinutes( )setMinutes( )方法。

語法

let date = new Date(set_date); // create new object of the date class.
let difference = date.getMinutes() – minutes_to_substract; // find difference between minutes date.setMinute( difference ); // set new minutes

引數

  • **set_date** − 這是日期類物件的可選引數。作為此引數,您可以傳遞日期和時間來用它初始化日期物件,否則它將使用當前日期和時間初始化日期物件。

示例

以下示例演示了上述方法。

<html>
<head>
   <title> Subtract the minutes from the date </title>
</head>
<body>
   <h3>The getMinutes() and setMinutes() methods in JavaScript.</h3>
   <p>Subtract 132 minutes from the July 31, 2022 11:30:25 :</p>
   <div id="date1"> </div>
   <p>Subtract the 40 minutes from the current time.</p>
   <div id="date2"> </div>
   <script type="text/javascript">
      let date1 = document.getElementById("date1");
      let date2 = document.getElementById("date2");
      
      // substracting the 132 minutes from the July 31, 2022 11:30:25
      let newdate = new Date('July 31, 2022 11:30:25');
      let difference = newdate.getMinutes() - 132;
      newdate.setMinutes(difference);
      date1.innerHTML = newdate;

      // subtracting the 40 minutes from the current time
      newdate = new Date();
      difference = newdate.getMinutes() - 40;
      newdate.setMinutes(difference);
      date2.innerHTML = newdate;
   </script>
</body>
</html>

在第二個輸出中,使用者可以看到,從當前時間減去 40 分鐘後,他們將獲得日期和時間。

以毫秒格式從日期中減去分鐘

在這種方法中

  • 首先,我們將使用**getTime()**方法獲取日期的總毫秒數。

  • 之後,我們將以毫秒的形式從總毫秒數中減去分鐘數。

  • 使用者可以將分鐘數乘以 60 秒 * 1000 毫秒,以將分鐘數轉換為毫秒數。


語法

下面,使用者可以看到使用此方法的語法。

let date = new Date( );
let totalMilliSeconds = date.getTime( );
let millisecondsToSubtract = minutes * 60 * 1000;
let newDate = new Date ( totalMilliSeconds – millisecondsToSubtract )

引數

  • **minutes** − 使用者需要將 minutes 替換為數值。這是使用者想要從日期中減去的總分鐘數。

示例

以下示例演示了以毫秒形式從日期中減去分鐘。

<html>
<head>
   <title> Subtract the minutes from the date </title>
</head>
<body>
   <h3> Subtract the Minutes from the date using the getTime() method. </h3>
   <h4> Subtracting the 20 minutes from the 2002-05-23T05:30:40 :</h4>
   <div id="date1"> </div>
   <script type="text/javascript">
      let date1 = document.getElementById("date1");

      // subtracting the 20 minutes from the 2021-02-23T09:33:10
      let oldDate = new Date('2002-05-23T05:30:40');
      let totalMilliSeconds = oldDate.getTime();
      let minutes = 20;
      let millisecondsToSubtract = minutes * 60 * 1000;
      let newDate = new Date(totalMilliSeconds - millisecondsToSubtract)
      date1.innerHTML = newDate;
   </script>
</body>
</html>

在上面的示例中,我們已經成功地從oldDate物件中以毫秒的形式減去了 20 分鐘,並獲得了上述輸出。

使用 Moment JS 庫

**Moment JS**是 JavaScript 中用於管理**日期**物件的特殊庫。確實,在原生 JavaScript 中,有各種方法可以管理日期物件,但是 Moment JS 使其更易於使用。

在這種方法中,

  • 我們將使用 Moment JS 的subtract()庫函式從給定日期中減去分鐘。

  • 要在原生 JavaScript 中使用 Moment JS 庫,使用者需要在 HTML 程式碼的< head >部分新增 Moment JS 的 CDN。


語法

使用者可以按照以下語法使用 Moment Js 的 subtract() 方法。

let newDate = moment().subtract( number_of_minuets, 'm').format( );

引數

  • **number_of_minutes** − 這是我們想要從給定日期物件中減去的總分鐘數。

  • 作為第二個引數給出的“m”標誌表明我們需要減去第一個引數中給出的分鐘數。但是,使用者可以輕鬆更改“m”標誌併為年、月、日、小時、秒等設定不同的標誌。

示例

在下面的示例中,我們在<head>部分添加了 Moment JS CDN。我們使用moment()建立了一個新的日期物件,並應用了帶有第二個引數“m”的 subtract 方法,以從當前時間減去分鐘。

<html>
<head>
   <title> Subtract the minutes from the date </title>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.3/moment-with-locales.min.js" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
</head>
<body>
   <h4> Subtracting the 100 minutes from the current time using Moment Js :</h4>
   <div id="momentOutput1"> </div>
   <script type="text/javascript">
      let momentOutput1 = document.getElementById("momentOutput1");

      // subtract 100 minutes from the current date
      newDate = moment().subtract(100, 'm').format();
      momentOutput1.innerHTML = newDate;
   </script>
</body>
</html>

結論

本教程教我們如何從給定的日期中減去分鐘。在第一種方法中,我們學習瞭如何使用兩種方法getMinutes()setMinutes()從日期中減去分鐘。在第三種方法中,我們透過編寫一行程式碼完成了同樣的工作。因此,Moment JS 是解決本教程中給定問題的最佳庫。

更新於:2022年7月20日

4K+ 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.