javaScript系列:js中获取时间new Date()详细介绍

javaScript系列:js中获取时间new Date()详细介绍

 
1.自动获取今天星期几:
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; //获取当前月份

 

posted @ 2015-11-20 11:54  猫老板的豆  阅读(16024)  评论(0编辑  收藏  举报