javaScript系列:js中获取时间new Date()详细介绍
javaScript系列:js中获取时间new Date()详细介绍
var aaa = \'日一二三四五六\' aaa.charAt(new Date().getDay()) //"日"
2.获取今天日期格式(—-年–月–日):
myDate.getFullYear()+\'年\'+(myDate.getMonth()+1)+\'月\'+myDate.getDate()+\'日\' //"2015年11月8日"
3.详解
var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位,1970-????) myDate.getMonth(); //获取当前月份(0-11,0代表1月) myDate.getMonth()+1 myDate.getDate(); //获取当前日(1-31) myDate.getFullYear()+\'年\'+(myDate.getMonth()+1)+\'月\'+myDate.getDate()+\'日\'; //"2015年11月8日"
myDate.getDay(); //获取当前星期X(0-6,0代表星期天) myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数) 时间戳 myDate.getHours(); //获取当前小时数(0-23) myDate.getMinutes(); //获取当前分钟数(0-59) myDate.getSeconds(); //获取当前秒数(0-59) myDate.getMilliseconds(); //获取当前毫秒数(0-999) myDate.toLocaleDateString(); //获取当前日期 "2015/10/9" var mytime=myDate.toLocaleTimeString(); //获取当前时间 "下午4:15:47" myDate.toLocaleString( ); //获取日期与时间 "2015/10/9 下午4:15:47"
JS获取当前时间戳的方法:
第一种方法:
var timestamp =Date.parse(new Date());
结果:1280977330000
第二种方法:
var timestamp =(new Date()).valueOf();
结果:1280977330748
第三种方法:
var timestamp=new Date().getTime();
结果:1280977330748
第一种:获取的时间戳是把毫秒改成000显示,
第二种和第三种是获取了当前毫秒的时间戳。
我和同事在用js实现一个显示出分析数据所剩大概时间的过程中,时间总是变给0,结果很怪异,最后发现获取时间的时候用的是Date.parse(newDate())获取的时间戳把毫秒改成了000显示,所以时间差计算的不准确。
可以用第二种或第三种方法计算时间差。
js中单独调用new Date(),例如document.write(new Date());
显示的结果是:Mar 31 10:10:43 UTC+0800 2012 这种格式的时间
但是用new Date() 参与计算会自动转换为从1970.1.1开始的毫秒数
将字符串形式的日期转换成日期对象
var strTime="2011-04-16"; //字符串日期格式 var date= new Date(Date.parse(strTime.replace(/-/g, "/"))); //转换成Data(); var month=date.getMonth()+1; //获取当前月份