/*
1、时间对象.getFullYear()/.setFullYear(数字)。
获取/设置时间对象中的年份信息。
2、时间对象.getMonth()/.setMonth(数字)。
获取/设置时间对象中的月份信息。
注意:获取/设置的结果中,0表示一月,1表示二月,......。
3、时间对象.getDate()/.setDate(数字)。
获取/设置时间对象中的日份信息。
4、时间对象.getHours()/.setHours(数字)。
获取/设置时间对象中的时份信息。
5、时间对象.getMinutes()/.setMinutes(数字)。
获取/设置时间对象中的分份信息。
6、时间对象.getSeconds()/.setSeconds(数字)。
获取/设置时间对象中的秒份信息。
7、时间对象.getDay()。
获取时间对象中的周份信息(即一周中的第几天,也就是星期几)。
注意:0表示星期天,1表示星期一,......。
8、时间对象.getTime()/.setTime(数字)。
获取/设置时间对象中的时间戳信息。
时间戳介绍:
在时间轴上有一个计算机元年(1970-1-1 0:0:0),也叫格林威治时间。
任意一个时间节点和格林威治时间相差的毫秒数,就是这个时间节点的时间戳。
其中格林威治时间以后的时间的时间戳是正数,以前的时间的时间戳是负数。
格林威治时间的时间戳为0。
若不需要精确到毫秒,只需将获得的时间戳除以1000再取整即可(一般是向上取整)。
通过时间戳获取天数等信息时,只需除以对应的数即可(计算天数时用时间戳除以[24*60*60*1000],因为1天24小时,1小时60分钟,1分钟60秒,1秒等于1000毫秒,计算其他以此类推)。
*/
案例(计算“2021年2月23日11时22分18秒”与“2021年2月25日3时45分36秒”之间相差几天几小时几分几秒):
var time1 = new Date(2021, 1, 23, 11, 22, 18);
var time2 = new Date(2021, 1, 25, 3, 45, 36);
var ms1 = time1.getTime();
var ms2 = time2.getTime();
var sub = Math.ceil((ms2 - ms1) / 1000);
var day = Math.floor(sub / (24 * 60 * 60));
var hours = Math.floor(sub % (24 * 60 * 60) / (60 * 60));
var minutes = Math.floor(sub % (60 * 60) / 60);
var seconds = Math.floor(sub % 60);
console.log(day + "天" + hours + "小时" + minutes + "分" + seconds + "秒");
// 输出结果为:1天16小时23分18秒