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 (中国标准时间)