就是一个new Date()
对象,要注意的有以下几点;
- 直接给oDate对象设置年月日时分秒的时候要分成两步,
oDate.setFullYear()
接受三个参数分别是年月日,注意月份是从0开始计一月的;而oDate.setHours()
,可以接受3个或者4个,三个就是时分秒,四个就是再加一个毫秒; - 网上搜到一种获取以当前时间为基准的下一段时间或者前一段时间的方法,主要用到
oDate.setTime()
,参数里放毫秒数,可以正数可以负数,代表着设置后的oDate
为1970年1月1日后多少毫秒的时间点,注意setTime()
返回的值其实是参数里的毫秒数,而不是设置后新的oDate
对象。
var oDate = new Date();
var nTime = oDate.getTime();//现在的时间戳,距离1970年的毫秒数
oDate.setFullYear(2016,8,15);//直接将2016年9月15日设置给了oDate。
oDate.setHours(0,0,0,0);// 将0时0分0秒0毫秒,添加给了oDate。
oDate.getTime();//这样获得了9月15日的时间戳,距离1970年的毫秒数
var durTime = parseInt((fTime - nTime)/1000)//得到时间差的秒数
var d = parseInt(durTime/86400);
durTime%=86400 //这时durTime是不够一天的秒数,给小时的
var h = parseInt(durTime/3600); //得到剩下秒数相当于小时
durTime%=3600;
var m = parseInt(durTime/60);
var s = durTime%60;
得到秒数如何得到天数,小时,分数,秒
可以通过oDate.setTime(0)
获得1970年1月1日这个时间点,参数里的数字可以是正负,代表距离1970年1月1日的时间差,单位是毫秒。
这样就可以很轻松的**得到当前时间的下一秒,或者前一秒,或者任意一段时间都可以**
,比如
var oDate = new Date(); //获得当前时间
var nTime = oDate.getTime(); //获得当前时间距离1970年1月1日的时间毫秒
oDate.setTime(nTime + 5000); //在nTime基础再加上5秒,就可以让oDate设置为当前时间的下5秒。注意这个方法返回的就是参数里的毫秒数,所以不要去赋值,因为赋值出来的数就是nTime +5000;