Js内置基本函数(Date)

获取日期和时间:
  • 年:getYear() 获取年份 如果获取的年份小于2000 则返回年份的最后两位,如果超过2000 则:2000为100,多出来的就加上 eg:2016年为 116
var date=new Date();
date.getYear() //116

var date=new Date('1995-12-22 11:11:22');
date.getYear();//95

  • 年: getFullYear() 获取完整年份,和getYear不同的是,该方法可获取完整的年份
var date=new Date();
date.getFullYear() //2016

var date=new Date('1995-12-22 11:11:22');
date.getFullYear();//1995

  • 月:getMonth() 获取时间对应的月份,返回值为0-11 也就是说,该方法0表示1月11表示12月
var date=new Date();
date.getMonth() //9

  • 日:getDate() 获取日期对应的日期返回值为1-31
var date=new Date();
date.getMonth() //18

  • 周:getDay() 获取日期是星期几 返回值为0-6 周日表示0
var date=new Date();
date.getDay() //2

  • 时:getHours() 获取日期对应的小时 返回值为0-23
var date=new Date();
date.getHours() //22

  • 分:getMinutes() 获取日期的分钟 返回0-59
var date=new Date();
date.getMinutes() //16

  • 秒:getSeconds() 获取日期对应的秒 返回0-59
var date=new Date();
date.getSeconds() //16

  • 毫秒:getMilliseconds() 获取日期对应的毫秒数 返回0-999
var date=new Date();
date.getMilliseconds() //25

  • 时间戳:getTime() 获取当前日期对应的时间戳
var date=new Date();
date.getTime() //1476800317958

  • 时区:getTimezoneOffset() 获取和0时区相差分钟数,比0时区时间早(东时区)为负数,比0时区晚(西时区)为正数
var date=new Date();
date.getTimezoneOffset() //-480 (8*60)

  • 获取时间:toGMTString() 获取GMT(格林威治时间)字符串,toString() 将Date对象转换成时间格式的字符串,toLocalString() 返回一个本地格式的时间字符串(会根据用户所在的地区不同显示处不同的结果),
date=new Date()
date.toGMTString()
//"Tue, 18 Oct 2016 14:31:47 GMT"

date.toString()
//"Tue Oct 18 2016 22:31:47 GMT+0800 (中国标准时间)"

date.toLocaleDateString()
//"2016/10/18"
  • 转换,将日期格式字符串转换成时间戳的两个方法:

Date.parse方法&Date.prototype.getTime方法&Date.propotype.valueOf方法

var dateStr="1995-10-12 11:12:22:555";
Date.parse(dateStr)
//813467542555

var date=new Date(dateStr)
date.getTime()
//813467542555

var date=new Date(dateStr)
date.valueOf()
//813467542555

设置日期和时间:
  • 年 setYear(number) 设置年份,2位或4位,只能设定为2位(2000年以前)和4位(2000年以后)不能设定为getYear()中获取的年份
var date=new Date()
date.setYear(95);
date.toLocaleDateString()
//"1995/10/18"

date.setYear(2024)
date.toLocaleDateString()
//"2024/10/18"

date.setYear(date.getYear())
date.toLocaleDateString()
//"124/10/19"

  • 年 setFullYear(number) 设置完整年份,4位
var date=new Date()
date.setFullYear(2024)
date.toLocaleDateString()
//"2024/10/18"

  • 月 setMonth(number) 设置月份,同getMonth相同,须设定为0-11,0表示1月,如果设定的值大于11,不会报错而是会进行累加 如下例:
var date=new Date()
date.setMonth(9)
date.toLocaleDateString()
//"2016/10/18"

date.setMonth(14)
date.toLocaleDateString()
//"2017/3/18"
  • 日 setDate(number) 设置日,同getDate相同,须设定为1-31,如大于31同样会进行累加 如下例:
var date=new Date()
date.setDate(44)
date.toLocaleDateString()
//"2016/11/13",(今日日期为:2016年10月18日)

  • 小时 setHours(number) 设置小时,同getHours相同,须设定在0-59,如果大于59同样会进行累加 如下例:
var date=new Date()
date.setHours(44)
date.toLocaleDateString()
//"2016/10/19",(今日日期为:2016年10月18日)

  • 分 setMinutes(number)

  • 秒 setSeconds(number)

  • 毫秒 setMilliseconds(number) 同setHours相同,就不再赘述

  • 设置时间戳 setTime 设置一个时间戳

var date=new Date()
date.setTime(2476878564626);//设定了一个比较大的值
date.toLocaleDateString()
//"2048/6/27"

相比较,set部分少了一个setDay方法(无法设定星期几),
还有关于Date内置函数UTC部分没有提及.

你可能感兴趣的:(Js内置基本函数(Date))