如何在 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" integrity="sha512-vFABRuf5oGUaztndx4KoAEUVQnOvAIFs59y4tO0DILGWhQiFnFHiR+ZJfxLDyJlXgeut9Z07Svuvm+1Jv89w5g==" 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 是解决本教程中给出的问题的最佳库。