Date
在开发中实际的应用:
(1)日期的展示
(2)倒计时
(3)时间的展示
(4)日历控件
通过Date构造函数创建一个新的对象,如:var time=new Date()
Date()的参数可以是一个整数,代表这距离1970-1-1的时间
Date(year,mouth[,date[,hours[,minutes[,second[,ms]]]]]) //年,月,日,小时,分钟,秒,毫秒,注意,这边的月份的范围是0-11,对应现实中的月份是1-12,即11的话对应12月,0的话对应1月
举例:
console.log(new Date()) //输出当前时间
console.log(new Date(1474500000000)) //这个整数代表着毫秒,意思是距离1970-1-1号的时间
console.log(new Date(2018,16,24,21,37,99)) //Fri May 24 2019 21:38:39 GMT+0800
注意:当输入的参数超出了范围,比如月份是0-11,但是输入了12,那么会自动进1,转成对应的时间
日期函数
Date.now() //返回自1970-1-1至今的毫米数
Date.parse() //解析一个表示日期的字符串,并返回从1970-1-1所进过的毫米数
Date.UTC() //接受和构造函数最长形式参数的相同的参数(参数个数是2-7),并返回从1970-1-1 00:00:00UTC开始经过的毫米数
示例:
console.log(Date.now()) //1532440069015
console.log(Date.parse("2017-12-30")) //1514592000000
console.log(Date.UTC(2018,16,24,21,37,99)) //1558733919000
获取日期
getFullYear() //获取日期中的一个4位年数
getMouth() //获取月数,取出来的月份还是0-11,如果要使用还是要+1
getDate() //获取日期
getHours() //获取小时
getMinutes() //获取分钟
getSeconds() //获取秒数
getDay() //获取日期中的星期几
getTime() //获取日期中的毫米数
案例:将日期转成我们能看懂的格式
var year=date.getFullYear();
var mouth=date.getMonth()+1;
var dateTime=date.getDate();
var hour=date.getHours();
var minutes=date.getMinutes();
var seconds=date.getSeconds();
var day=date.getDay();
var time=date.getTime(); //返回距 1970 年 1 月 1 日之间的毫秒数。
console.log(year+"-"+mouth+"-"+dateTime+" "+hour+":"+minutes+":"+seconds+" 并且今天是星期"+day)
设置日期
setFullYear() //设置年
setMouth() //设置月
setDate() //设置日期
setHours() //设置小时
setMinutes() //设置分钟
setSeconds() //设置秒
setTime() //设置毫秒
示例:
var a=new Date();
console.log(a) //Tue Jul 24 2018 22:09:33 GMT+0800 (中国标准时间)
a.setMonth(1) //设置2月份
console.log(a) //Sat Feb 24 2018 22:09:33 GMT+0800 (中国标准时间)
a.setFullYear(2020) //设置2020年
console.log(a); //Mon Feb 24 2020 22:09:33 GMT+0800 (中国标准时间)
Date的常用操作
日期格式化
function dateFormat(value) {
this.value=value;
}
dateFormat.prototype.countTime=function () {
var year=this.value.getFullYear();
var mouth=this.value.getMonth()+1;
var date=this.value.getDate();
var hours=this.value.getHours();
var minutes=this.value.getMinutes();
var seconds=this.value.getSeconds();
return year+"-"+mouth+"-"+date+" "+hours+":"+minutes+":"+seconds
}
var now=new Date();
var dateTime=new dateFormat(now);
console.log(dateTime.countTime())
日期转换(还没有弄懂)
var date=new Date()
date.setTime(1513496877000); //2017-12-17 15:47:57
var date=new Date(2017,11,25,12,25)
date.getTime(); //15141759000000
谋取某个月的天数(还没有弄懂)
function getdate(year,mouth) {
var data=new Date(year,mouth+1,0)
return data.getDate();
}
console.log(getdate(2017,1)); //28,这边的1是2月份
获取某个月份的天数