Date类型使用UTC(国际协调时间[又称世界统一时间])1970年1月1日午夜(零时)开始经过的毫秒来保存日期。在使用这种数据存
储格式的条件下,Date类型保存的日期能够精确到1970年1月1日之前或之后的285616年。
var box=new Date(); //创建了一个日起对象,构造方法里可以传参数,如果没有传,就是当前时间
alert(box); //Tue Jul 11 2017 16:24:26 GMT+0800 (中国标准时间) 不同浏览器结果不一样
alert(Date.parse(‘4/12/2007‘)); //返回的是一个毫秒数 1176307200000
var box=new Date(Date.parse(‘4/12/2007‘)); //把毫秒数转换成看得懂的时间
alert(box); //Thu Apr 12 2007 00:00:00 GMT+0800 (中国标准时间)
var box=new Date(1176307200000); //把毫秒数转换成看得懂的时间
alert(box); //Thu Apr 12 2007 00:00:00 GMT+0800 (中国标准时间)
var box=new Date(‘1176307200000‘); //不能是字符串
alert(box); //Invalid Date 无效的日期
使用:
var box=new Date(‘4/12/2007‘); //默认自动后台调用Data.parse()
alert(box); //Thu Apr 12 2007 00:00:00 GMT+0800 (中国标准时间)
alert(Date.parse()); //NaN,如果里面不传日期格式参数,返回NaN
var box=new Date(‘msdfkl 21123‘); //乱写的日期格式,会返回 火狐返回Invalid Date 谷歌返回一个混乱的日期 IE返回一个NaN
使用:
var box=new Date(‘May 25,2007‘); //第二种写法
alert(box); //Fri May 25 2007 00:00:00 GMT+0800 (中国标准时间)
var box=new Date(‘Thu Apr 12 2007 22:22:22 GMT+0800‘); //第三种写法
alert(box); //Thu Apr 12 2007 22:22:22 GMT+0800 (中国标准时间)
------------------------------------------------------------------------
alert(Date.UTC()); //必须传入年份和月份,不传,就各种错误,有负值,有NaN
alert(Date.UTC(2007,10)); //1193875200000 返回毫秒数
//UTC世界协调时间,他会按照他的区域基准来计算
var box=new Date(Date.UTC(2007,10,15,17,22,45,15)); //月份从0开始0-11,加8个小时
alert(box);//Fri Nov 16 2007 01:22:45 GMT+0800 (中国标准时间)
重要:
//如果不加Date.UTC,那么就会返回本地的时间
var box=new Date(2007,10,15,17,22,45,15);
alert(box); //Thu Nov 15 2007 17:22:45 GMT+0800 (中国标准时间)
------------------------------------------------------------------------
var box=new Date(2007,10,15,17,22,45,15);
alert(box); //Thu Nov 15 2007 17:22:45 GMT+0800 (中国标准时间) 默认调用toString()
alert(‘toString:‘+box.toString()); //Thu Nov 15 2007 17:22:45 GMT+0800 (中国标准时间)
alert(‘toLocaleString:‘+box.toLocaleString());//2007/11/15 下午5:22:45 各个浏览器返回的不一样
alert(‘valueOf:‘+box.valueOf()); //1195118565015 返回的是毫秒数
var box=new Date(2007,10,15,17,22,45,15);
alert(box.toDateString()); //Thu Nov 15 2007
alert(box.toTimeString()); //17:22:45 GMT+0800 (中国标准时间)
alert(box.toLocaleDateString()); //2007/11/15
alert(box.toLocaleTimeString()); //下午5:22:45
alert(box.toUTCString()); //Thu, 15 Nov 2007 09:22:45 GMT
------------------------------------------------------------------------
组件方法:
记住:用UTC和不用UTC只是相差8个小时
组件方法,是为我们单独获取你想要的各种时间/日期而提供的方法。
-----------------
获取毫秒:
var box=new Date(2007,10,15,17,22,45,15);
alert(box.getTime()); //1195118565015 得到毫秒数
var box=new Date(2007,10,15,17,22,45,15);
box.setTime(100);
alert(box.getTime()); //100 得到毫秒数
-----------------
获取年:
var box=new Date(2007,10,15,17,22,45,15);
alert(box.getFullYear()); //2007
var box=new Date(2007,10,15,17,22,45,15);
box.setFullYear(2009);
alert(box.getFullYear()); //2009
-----------------
获取月:
var box=new Date(2007,10,15,17,22,45,15);
alert(box.getMonth()+1); //10
var box=new Date(2007,10,15,17,22,45,15); 2007年11月15日17:22:45 月份要加1才是最终的月份
box.setMonth(5);
alert(box.getMonth()+1); //5
var box=new Date();
alert(box.getMonth()+1); //7
-----------------
获取日:
box.getDate();
获取星期几,0表示星期日,6表示星期六
获取时分秒毫秒
box.getHours() box.getMinutes() box.getSeconds box.getMilliseconds()
例子:
var box=new Date();
alert(box.getFullYear()+‘-‘+(box.getMonth()+1)+‘-‘+box.getDate()+‘ ‘+box.getHours()+‘:‘+box.getMinutes
()+‘:‘+box.getSeconds()); //2017-7-11 17:50:40