1.创作方式
构建函数方式创建:
? ? var date=new Date()? ? ? ? //表示当前时间
? ? var date=new Date('2021-10-5 10:55:34')? ? ?//自己设置时间
2.常用方法?
getFullYear()? ? //获取到年
getMonth()? ? ?//获取到月份
getDate()? ? ? //获取到天
getHourse()? ? //获取到小时
getMinutes()? ? //获取到分钟
getSeconds()? ? ?//获取到秒
getDay()? ? //获取到星期的第几天
getTime()? ? //得到执行时间到格林威治时间的毫秒数(格林威治时间是计算机起点时间)
3.计算时间差
(1)获取时间点的毫秒数
var time1=date1.getTime()
var time2=date2.getTime()
(2)两个毫秒数相减
var differentTime=time2-time1
(3)求相差天数
var day=differentTime/(24*60*60*1000)
day=Math.floor(day)? ? //得到天数
(4)相差小时数
var hoursSeconds=differentTime-(day*24*60*60*100)
var differentHours=hoursSeconds/(60*60*1000)
differentHours=Math.floor(differentHours)
(5)相差分钟数
var minutesSeconds=hoursSeconds-(differentHours*60*60*1000)
var differentMinutes=minutesSecond/(60*1000)
?示例:计算从出生到现在的时间
<script src="time.js"></script>
<script>
var date1=new Date('1998-11-13 23:45:18')
var date2=new Date()
//获取时间点的毫秒数
var time1=date1.getTime()
var time2=date2.getTime()
//毫秒数相减
differentTime=time2-time1
//求相差天数
day=differentTime/(24*60*60*1000)
day=Math.floor(day)
console.log('天数:',day)
//求相差的小时数
var differentHours=differentTime-(day*24*60*60*1000)
hours=differentHours/(60*60*1000)
hours=Math.floor(hours)
console.log('小时数:',hours)
//求相差的分钟数
var differentMinutes=differentHours-(hours*60*60*1000)
minutes=differentMinutes/(60*1000)
minutes=Math.floor(minutes)
console.log('分钟数:',minutes)
//求相差的分钟数
var differentSeconds=differentMinutes-(minutes*60*1000)
second=differentSeconds/1000
second=Math.floor(second)
console.log('秒数:',second)
var r=crtTimeFtt(date2)
console.log('直到'+r+' 你已经活了'+day+'天'+hours+'小时'+minutes+'分钟'+second+'秒了')
</script>
function dateFtt(fmt, date) {
//author: meizz
var o = {
"M+": date.getMonth() + 1, //月份
"d+": date.getDate(), //日
"h+": date.getHours(), //小时
"m+": date.getMinutes(), //分
"s+": date.getSeconds(), //秒
"q+": Math.floor((date.getMonth() + 3) / 3), //季度
S: date.getMilliseconds(), //毫秒
};
if (/(y+)/.test(fmt))
fmt = fmt.replace(
RegExp.$1,
(date.getFullYear() + "").substr(4 - RegExp.$1.length)
);
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt))
fmt = fmt.replace(
RegExp.$1,
RegExp.$1.length == 1
? o[k]
: ("00" + o[k]).substr(("" + o[k]).length)
);
return fmt;
}
//创建时间格式化显示
function crtTimeFtt() {
var crtTime = new Date(); //当前时间
return top.dateFtt("yyyy-MM-dd hh:mm:ss", crtTime); //直接调用公共JS里面的时间类处理的办法
}
|