计算当前日期到指定日期的天数
三种方法各有优点,根据业务需求决定选择所需方法
- 方法一 采用数组方式
let start_time = new Date('2020-07-01').getTime() //获取规定日期
let end_time = new Date().getTime() //获取当前时间
let arr = [] //创建空数组
//对i进行复制,i每次添加一天(86400000为一天的秒数)
for (let i = start_time; i < end_time; i = i + 86400000) {
arr.push(i) //将i放入数组中
}
console.log(arr.length) //数组长度即所求天数
- 方法二 计算时间
const d = new Date() - new Date('2020-07-01') //当前日期-指定时间
const day = d / (24 * 60 * 60 * 1000) //计算天数
console.log(day) //打印时会存在小数,根据业务需求选择截取方式
console.log(Math.ceil(day)) //小数取整(+1)
- 方法三 moment()
//注:需引入moment
let newtime = moment();
let time = moment("2020-07-01");
let day = newtime.diff(time,"day")
console.log(day);