如何使用 Javascript Date 对象计算特定日期之前的天数


创建新的 Date 对象

获得今天的日期很容易。只需使用 Date 对象的构造函数:

 // Get today's date
const now = new Date();
// Sun Nov 13 2022 18:28:22 GMT-0500 (Eastern Standard Time)

若要创建不同的日期(例如圣诞节),请使用不同的构造函数,其中日期由字符串指定:

// Make a date object for christmas
const christmas = new Date("Dec 25, 2022 00:00:00")

如何从日期获取年、月或日。

现在我们在 Date 对象中有了时间,使用 Date 的方法查找年、月或日就像简单一样:

const year = christmas.getFullYear() // 2022
const month = christmas.getMonth()// 11 - Get month as a number (0-11)

其他方法

  • getFullYear() 获取四位数字的年份 (yyyy)
  • getMonth() 获取月份作为数字 (0-11)
  • getDate() 获取数字形式的日期 (1-31)
  • getDay() 获取工作日作为数字 (0-6)
  • 获取小时() 获取小时 (0-23)
  • 获取分钟() 获取分钟数 (0-59)
  • getSeconds() Get Second (0-59)
  • 获取毫秒() 获取毫秒 (0-999)
  • getTime() 获取时间(自 1970 年 1 月 1 日起的毫秒数)

现在我们知道了Date的方法,获取两个日期之间的毫秒差异就像:

const msUntilChristmas = christmas.getTime() - now.getTime();

通过除以每天的毫秒数,可以很容易地转换为圣诞节前的天数:

const daysUntilChristmas = Math.floor(msUntilChristmas / (1000 * 60 * 60 * 24));
// use Math.floor() to round down
// 1000 ms per second
// 60 seconds per minute
// 60 minutes per hour
// 24 hours per day
console.log(`${daysUntilChristmas} days!`) /// 41 days!

现在,即使有闰年,您也可以计算圣诞节前的确切天数!使用上面解释的相同概念,您可以计算到您选择的任何一天或时间为止或自那时以来的天数、小时数甚至分钟数!

本站声明:
1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;

2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;

3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;

4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;

5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/293057.html

(0)
上一篇 2022年11月14日
下一篇 2022年11月14日

相关推荐

发表回复

登录后才能评论