js获得时间new Date()整理

Date对象取得年份有两种方法:getFullYear()和getYear()

经测试var dt = new Date();  //alert(new Date())弹出:Thu Aug 24 2017 09:12:42 GMT+0800 (中国标准时间)

alert(dt.getYear()):    IE浏览器弹出:2017  Firefox浏览器弹出:117(getYear()在Firefox下返回的是距1990年1月1日的年份,这是一个过时而不推荐的方法);

alert(dt.getFullYear()):   两个浏览器弹出都是:2017

因此无论何时都应使用getFullYear()代替getYear()方法;

示例:

例如当前是2017年

getFullYear()返回的结果是:2017

getYear()返回的结果是:117  (2017-1990=117)

************************************************************************** 

以下是前端得到当前系统时间

var endTime;
var beginTime;
var dt =new Date();
var year=dt.getFullYear();
var month=dt.getMonth()+1;   //得到的月份是从0-11
var day = dt.getDate();  //获取当前是这个月几号
if(month<10){
  endTime=year+"-"+"0"+month;
}else{
  endTime=year+"-"+month;
}
if(day<10){
  endTime +="-"+"0"+day;
}else{
  endTime +="-"+day;
}
beginTime=year+"-"+"01"+"-"+"01";  //得到的是今年_ _ _ _-01-01

****************************************************************************

var dt =new Date(); 

dt.getDay();  //获取当前星期几(0-6,0代表星期天)

dt.getHours();  //时(0-23)

dt.getMinutes();  //分(0-59)

dt.getSeconds();  //秒(0-59)

dt.getMillseconds();  //毫秒(0-999)

dt.toLocaleDateString();   //获取当前日期,如2017/8/23

dt.toLocaleTimeString();   //获取当前时间,如下午5:43:03

dt.toLocaleString();   //获取日期与时间,如2017/8/23 下午5:43:36

*******************************************************************************

js获得当前时间戳的3种方法:

//.parse() 方法可解析一个日期时间字符串,并返回 1970/1/1 午夜距离该日期时间的毫秒数

var timestamp =Date.parse(new Date());    结果:1503537020000       //不推荐; 毫秒改成了000显示

var timestamp =new Date().valueOf();       结果:1503537023711       //推荐; 

var timestamp=new Date().getTime();         结果:1503537023711        //推荐; 

***************************************************************************

将字符串格式的日期转换成日期格式

var timestr = "2017-08-24";  

转成2017/08/24日期格式:timestr.replace(/-/g,"/");------------/-/g是正则表达式,其中g表示全局替换

获得中国标准时间:new Date(timestr.replace(/-/g,"/"));------------相当于得到new Date(),也就是Thu Aug 24 2017 00:00:00 GMT+0800 (中国标准时间)

获得时间戳:new Date(timestr.replace(/-/g,"/")).valueOf();

****************************************************************************

new Date(参数);  参数可以为整数也可以为字符串

new Date(2017,07,24);  //正确

new Date("2017/07/24");  //正确

new Date("2017-07-24");  //错误

----------------------------------------

new Date( year, month, date, hrs, min, sec)  按给定的参数创建一日期对象

参数说明:

  year=需设定的年份-1900;例如:需设定的是1999年,则year=1999-1900=99(测试发现year值域0-99,换句话说,year设值0-99时候,显示年份为1900+year,不在这范围内的年份,原样输出);

  month值域为0-11,分别代表1-12月份;

  date值域1-31日,需要注意的是月份date值不一样,给出错误的参数会得到错误的结果,见下面例子;

  hre值域0-23小时,从午夜到次日凌晨1点间hrs=0,从中午到下午1点间hrs=12;

  min和sec的值域在0~59之间。

示例:

  设定时间:1999年8月24号

  Date day = new Date(99,7,24);  //alert(day)弹出:Tue Aug 24 1999 00:00:00 GMT+0800 (中国标准时间)

  设定时间:2017年8月24号,输出确是117年8月24号

  Date day = new Date(117,7,24);  //alert(day)弹出:Tue Aug 24  117 00:00:00 GMT+0800 (中国标准时间)

下面是给month不正确参数例子:

  设定时间:1990年2月30号,会被解析成1990年3月2号;因为1990年2月只有28天

  Date day = new Date(90,1,30);  //alert(day)弹出:Fri Mar 02 1990 00:00:00 GMT+0800 (中国标准时间)

posted @ 2017-08-23 16:56  howtosay  阅读(1056)  评论(2编辑  收藏  举报