一、Date的构造函数
有四种形式的Date构造函数:
//1.构造函数没有参数,则返回当前日期的Date对象 var now=new Date(); //2.构造函数的参数为日期的毫秒数,返回距离1970年1月1日经过该毫秒后对应的日期 var date=new Date(1222233); //3.构造函数的参数为对应的日期字符串,返回对应的日期对象,其中年,月,日是必须的,时分秒可选 //实际上,上面这种直接将表示日期的字符串传递给Date构造函数,会在后台调用Date.parse var date1=new Date('2016-01-01'); var date2=new Date('2016/01/01 12:00:00'); //4.构造函数的参数分别为年份,基于0的月份(0-11),月中的哪一天(1-31),小时数(0-23),分钟,秒以及毫秒。 //在这些参数中,只有前两个参数(年和月)是必需的。如果没有提供月中的天数,则假设天数为1,如果省略其他参数,则统统假设为0 //实际上,上面这种情况的构造函数,在后台调用了Date.UTC var date2=new Date(2016,4,5,17,55,55);
二、返回日期对应的毫秒数
1.Date.parse()
Date.parse()接收一个日期字符串,返回该日期对应的毫秒数。
2.Date.UTC()
Date.UTC()的参数参数分别为年份,基于0的月份(0-11),月中的哪一天(1-31),小时数(0-23),分钟,秒以及毫秒。在这些参数中,只有前两个参数(年和月)是必需的。如果没有提供月中的天数,则假设天数为1,如果省略其他参数,则统统假设为0。返回该日期对应的毫秒数。
3.如果已有日期对象date,获取它对应的毫秒数,大多采用date.getTime()或者+date
三,获取当前时间对应的毫秒数
这常常用在监测一段代码运行了多长时间。
方法一:var start=Date.now();
方法二:var end=+new Date();
方法三:var end=new Date().getTime()
四、常见的Date方法
var date=new Date('2016-01-10'); var time=date.getTime()//返回该date对象对应的毫秒数,与valueOf返回的结果相同 date.setTime(1);//以毫秒数设置日期,这常常会改变整个日期对象 var year=date.getFullYear();//取得四位数的年份,如2016而非16 date.setFullYear(2012);//设置年份,传入的参数必须是四位数字 var month=date.getMonth();//返回该date对象的月份(0-11) date.setMonth(0);//设置月份,参数必须为0-11的数字 var day=date.getDate();//返回该date对象月份中的天数(1-31) date.setDate(11);//设置月份中的天数,参数必须为1-31之间的数字 var week=date.getDay();//返回该date对象星期中的天数(0-6) var hours=date.getHours();//返回该date对象一天中的小时数(0-23),对应的有setHours var minutes=date.getMinutes();//返回日期中的分钟数(0到59),对应的有setMinutes var seconds=date.getSeconds();//返回日期中的秒数(0-59),对应的有setSeconds