如何在 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 是解决本教程中给定问题的最佳库。