在本教程中,我们将学习查找两个日期之间的差异并检查差异是否小于一小时。有时,开发人员必须使用 date 对象并每小时执行一些操作。因此,这可以是一种检查特定操作是否在一小时之前执行的方法,然后再次执行;否则,请等待完成该小时。
在这里,我们将学习使用 javascript 检查日期是否少于 1 小时前的不同方法。
使用 gettime() 方法 gettime() 方法返回自 1970 年 1 月 1 日起的日期的总毫秒数。因此,我们可以使用 gettime() 方法来查找 1970 年 1 月 1 日以来的总毫秒数当前和上一个日期。之后,我们可以找到两个日期的总毫秒数的差异,并将其与小时的总毫秒数进行比较,即1000*60*60。
语法用户可以按照以下语法使用 javascript 检查日期是否小于 1 小时前。
let current_date = new date();let difference = current_date.gettime() - date.gettime();let hoursmilli = 1000 * 60 * 60; // milliseconds * seconds * minutesif (math.abs(difference) < hoursmilli) { // less than 1 hour spent} else { // more than 1 hour ago}
在上面的语法中,hoursmilli包含小时的总毫秒数,我们使用math.abs()方法来获取两个日期之间的毫秒绝对差。
步骤第 1 步 - 创建两个日期。
步骤 2 - 使用 gettime() 方法获取两个日期的总毫秒数,找到它们之间的差异,并将其值存储在差异变量中。
第3步 - 将1小时的总毫秒数存储在hoursmilli变量中。
步骤 4 - 如果差异变量的绝对值小于 hourmilli,则表示尚未花费 1 小时。
示例在下面的示例中,我们创建了两个具有不同时间戳的不同日期。我们按照上述步骤将日期和 current_date 的总毫秒数与 1 小时的总毫秒数进行比较,以检查日期是否小于一小时前。
<html><body> <h3>using the <i> custom algorithm </i> to check if the date was less than 1 hour ago.</h2> <div id=output> </div> <script> let output = document.getelementbyid(output); let date1 = new date(2023, 02, 11); // creating a date that is not less than 1 hour ago let date2 = new date(new date().gettime() - 20302); function ishourspent(date) { let current_date = new date(); let difference = current_date.gettime() - date.gettime(); console.log(difference); let hoursmilli = 1000 * 60 * 60; // comparing the hour's total milliseconds and the difference between the two dates. if (math.abs(difference) < hoursmilli) { output.innerhtml += the + date + is less than an hour ago! <br/>; } else { output.innerhtml += the + date + is not less than hour ago! <br/>; } } ishourspent(date1); ishourspent(date2); </script></body></html>
使用日期对象的setminutes()方法date 对象中的 setminutes() 方法允许开发人员设置时间戳中的分钟。日期需要分、秒、毫秒三个参数来设置,秒、毫秒是可选的。
如果我们将分钟设置为零并比较两个日期,我们可以知道特定日期是否在一小时之前。
语法用户可以按照下面的语法使用setminute()方法来检查两个日期之间的差异是否小于一个小时。
date.setminutes(0, 0, 0);current_date.setminutes(0, 0, 0);if (date - current_date == 0) { // difference between the two dates is not more than an hour} else { // difference between two dates more than an hour.}
步骤步骤 1 - 使用 setminutes() 方法,并传递 0, 0, 0 作为参数,将 的分、秒和毫秒设置为零>前一个日期。
第 2 步 - 将current_date 的分钟设置为零。
第 3 步 - 计算两个日期之间的差值;如果为零,则日期不到一小时前。
示例在此示例中,我们使用 setminutes() 方法来设置日期和零的总分钟数。之后,我们取日期之差,返回日期之间的毫秒差。
如果差异为零,则两个日期的年、月、日和小时相同。因此,我们可以说这一天距离前不到 1 小时。
<html><body> <h3>using the <i> setminutes() method </i> to check if the date was less than 1 hour ago.</h2> <div id=output> </div> <script> let output = document.getelementbyid(output); let date1 = new date(2022, 12, 01); let date2 = new date(new date().gettime() - 20302); function ishourspent(date) { let current_date = new date(); date.setminutes(0, 0, 0); current_date.setminutes(0, 0, 0); if (date - current_date == 0) { output.innerhtml += the + date + is less than hour ago! <br/>; } else { output.innerhtml += the + date + is not less than an hour ago! <br/>; } } ishourspent(date1); ishourspent(date2); </script></body></html>
在本教程中,我们学会了查找两个日期之间的差异并检查日期是否小于 1 小时前。此外,用户可以使用 moment js 库的 diff() 和 isafter() 方法来检查是否相同,但用户应该记住,moment js 库如今已被弃用。
以上就是如何使用 javascript 检查日期是否小于 1 小时前?的详细内容。