关键点 根据时间戳来计算特定时间与今天的距离,时间戳表示,参数时间距离1970-1-1的毫秒距离,所以得到时间戳的距离之后,应该除 24 * 60 * 60 * 1000
- 获取时间戳的方式
- (new Date()).valueOf()
- Date.parse(new Date())
- new Date().getTime()
var person = {
level: '2',
name: '小丽',
registTime: '2021-11-01',
}
var h2 = document.querySelector('h2');
// 补全代码
let day = getDay(new Date(person.registTime), new Date());
h2.innerText = `尊贵的牛客网${person.level}级用户${person.name}您好,您已经注册牛客网${day}天啦~`;
function getDay(startTime, endTime) {
return Math.floor((endTime.valueOf() - startTime.valueOf()) / 86400 / 1000);
}
还有一个点,是在求时间戳的时候 new Date().valueOf()是否需要在前面new 操作处加行括号。实践,不需要加括号也是可以得到正确的结果
查阅操作符号优先级表 参数访问 == new 带参数列表 > new 无参数列表 所以优先级相同,计算顺序从左往右。