用来处理日期和时间
创建日期对象
var date = new Date();//使用构造函数创建一个当前时间的对象
var date = new Date(“2017-03-22”);//创建一个指定时间的日期对象
var date = new Date(“2017-03-22 00:52:34”);//创建一个指定时间的日期对象
var date = new Date(2017, 2, 22, 0, 52, 34);
var date = new Date(1523199394644);//参数:毫秒值
结果:Tue Jul 30 2019 21:26:56 GMT+0800 (中国标准时间)
类型使用自 CTU(Coordinated Universal Time,国际协调时间)1970 年 1 月 1 日午夜(零时)开始经过的毫秒数来保存日期。Date 类型保存的日期能够精确到 1970 年 1 月 1 日之前或之后的 285616 年。
Date构造函数当不传递任何参数的时候,返回的是当前时间。当传入参数的时候,获取的是传进去的时间
获取时间
使用日期对象的方法获取日期的指定部分
getMilliseconds();//获取毫秒值
getSeconds();//获取秒
getMinutes();//获取分钟
getHours();//获取小时
getDay();//获取星期,0-6 0:星期天
getDate();//获取日,即当月的第几天
getMonth();//返回月份,注意从0开始计算,这个地方坑爹,0-11
getFullYear();//返回4位的年份 如 2016
案例:将日期格式化成字符串
function formatDate(date) {
var d = new Date(date),
month = ‘’ + (d.getMonth() + 1),
day = ‘’ + d.getDate(),
year = d.getFullYear();
if (month.length < 2) month = ‘0’ + month;
if (day.length < 2) day = ‘0’ + day;
return [year, month, day].join(’-’);
}
console.log(formatDate(‘Sun May 13,2016’));
日期转为毫秒数(时间戳)
Date.parse(“2015-08-24”) // 获取1970年到设定时间的毫秒数
new Date().getTime()
+new Date();
案例:计算两个日期的时间差值
function count(){
var date1=new Date(2010,10,3);
var date2=new Date(2017,9,24);
var date=(date2.getTime()-date1.getTime())/(10006060*24);/不用考虑闰年否/
alert(“相差”+date+“天”);
}
案例:日期差值;
var date1 = new Date(‘2013/04/02 18:00’)
var date2 = new Date(‘2013/04/02 19:22:21’)
var s1 = date1.getTime(),s2 = date2.getTime();
var total = (s2 - s1)/1000;
var day = parseInt(total / (246060));//计算整数天数
var afterDay = total - day246060;//取得算出天数后剩余的秒数
var hour = parseInt(afterDay/(6060));//计算整数小时数
var afterHour = total - day246060 - hour6060;//取得算出小时数后剩余的秒数
var min = parseInt(afterHour/60);//计算整数分
var afterMin = total - day246060 - hour6060 - min*60;//取得算出分后剩余的秒数
日期格式化
date.toLocalString();//本地风格的日期格式
date.toLocaleDateString(); // 获取日期
date.toLocaleTimeString(); // 获取时间
设置时间
date.setFullYear(2016) // 将日期对象中的年份设置为2016
date.setMonth(3) // 将日期对象中的月份设置为4月份
date.setDate(15) // 将日期对象中的日期设置为15号
date.setHours(12) // 将日期对象中的小时设置为12点
date.setMinutes(56) // 将日期对象中的分钟设置为56分
date.setSeconds(23) // 将日期对象中的描述设置为23秒
date.setTime(0) // 将日期对象设置为0的时间戳
以上内容皆为逆战班所学总结,大家可以一块探讨,共同进步