js Date
- date对象的创建
- var a=new Date();
var date1=new Date();//创建Date日期对象
console.log(date1);//返回系统当前日期
var date2=new Date('1997-05-23');//Date的参数可以是字符串
//数字之间的连接符可以是 - 也可以是 / 中文的年月日不可以
console.log(date2);//返回 1997-05-23
var date3=new Date(2019,05,12);//Date的参数可以是数值
//中间用逗号分隔
console.log(date3);//返回 2019-05-12
var date4=new Date(2000);//Date的参数只有一个值的时候,值为毫秒数。
//代表着距离计时元年(1970-01-01 00:00 :00)(伦敦时间)毫秒数
//北京时间为(1997-01-01 08:00:00)
console.log(date4);//返回1997-01-01 08:00:02
注:1000毫秒等于1秒
- Date对象的get方法
方法 | 参数 | 功能 |
---|---|---|
getFullYear() | 无参数 | 得到时间的年份(本地) |
getUTCFullYear() | 无参数 | 得到时间的年份(伦敦时间) |
getMonth() | 无参数 | 得到时间的月份(本地)从0开始 |
getUTCMonth() | 无参数 | 得到时间的月份(伦敦时间)从0开始 |
getDate() | 无参数 | 得到时间的日期(本地) |
getUTCDate() | 无参数 | 得到时间的日期(伦敦时间) |
getDay() | 无参数 | 得到时间的星期(本地)0-6 0表示星期日 |
getUTCDay() | 无参数 | 得到时间的星期(伦敦时间)0-6 0表示星期日 |
getHours() | 无参数 | 得到时间的小时(本地) |
getUTCHours() | 无参数 | 得到时间的小时(伦敦时间) |
getMinutes() | 无参数 | 得到时间的分钟(本地) |
getUTCMinutes() | 无参数 | 得到时间的分钟(伦敦时间) |
getSeconds() | 无参数 | 得到时间的秒(本地) |
getUTCSeconds() | 无参数 | 得到时间的秒(伦敦时间) |
getMilliseconds() | 无参数 | 得到时间的豪秒(本地) |
getUTCMilliseconds() | 无参数 | 得到时间的豪秒(伦敦时间) |
getTime() | 无参数 | 时间戳(时间到计时元年的毫秒数) |
var date1=new Date();//得到当前日期
var arra=new Array('星期日','星期一','星期二','星期三','星期四','星期五','星期六')
var y=date1.getFullYear();//得到年(本地)
var uy=date1.getUTCFullYear();//得到年(伦敦时间)
console.log(y);//2019
console.log('UTC:'+uy);//2019
var Month=date1.getMonth()+1;//得到月(本地)月份从0开始所以需要加1
var uMonth=date1.getUTCMonth()+1;//得到月(伦敦时间)月份从0开始所以需要加1
console.log(Month);//10
console.log('UTC:'+uMonth);//10
var d=date1.getDate();//得到日(本地)
var ud=date1.getUTCDate();//得到日(伦敦时间)
console.log(d);//18
console.log('UTC:'+ud);//18
var Day=date1.getDay();//得到星期(本地)
var uDay=date1.getUTCDay();//得到星期(伦敦时间)
console.log(arra[Day]);//返回值为0-6所以需要数组
console.log('UTC:'+arra[uDay]);//返回值为0-6所以需要数组
var h=date1.getHours();//得到小时(本地)
var uh=date1.getUTCHours();//得到小时(伦敦时间)
console.log(h);14
console.log('UTC:'+uh);6
var f=date1.getMinutes();//得到分钟(本地)
var uf=date1.getUTCMinutes();//得到分钟(伦敦时间)
console.log(f);//28
console.log('UTC:'+uf);//28
var S=date1.getSeconds();//得到秒(本地)
var uS=date1.getUTCSeconds();//得到秒(伦敦时间)
console.log(S);//40
console.log('UTC:'+uS);//40
var m=date1.getMilliseconds();//得到毫秒(本地)
var um=date1.getUTCMilliseconds();//得到毫秒(伦敦时间)
console.log(m);//147
console.log('UTC:'+um);//147
- Date对象的set方法
方法 | 参数 | 功能 |
---|---|---|
setFullYear() | 数值 | 设置时间的年份(本地) |
setUTCFullYear() | 数值 | 设置时间的年份(伦敦时间) |
setMonth() | 数值 | 设置时间的月份(本地)从0开始 |
setUTCMonth() | 数值 | 设置时间的月份(伦敦时间)从0开始 |
setDate() | 数值 | 设置时间的日期(本地) |
setUTCDate() | 数值 | 设置时间的日期(伦敦时间) |
setHours() | 数值 | 设置时间的小时(本地) |
setUTCHours() | 数值 | 设置时间的小时(伦敦时间) |
setMinutes() | 数值 | 设置时间的分钟(本地) |
setUTCMinutes() | 数值 | 设置时间的分钟(伦敦时间) |
setSeconds() | 数值 | 设置时间的秒(本地) |
setUTCSeconds() | 数值 | 设置时间的秒(伦敦时间) |
setMilliseconds() | 数值 | 设置时间的豪秒(本地) |
setUTCMilliseconds() | 数值 | 设置时间的豪秒(伦敦时间) |
setTime() | 数值 | 设置时间的豪秒 |
//设置时间
var d=new Date();//得到当前系统时间
d.setFullYear(9012);//设置年为9012
d.setMonth(11)//设置月为12月 因为月份是从0开始得到的
d.setDate(31)//设置日期为31号
d.setHours(0);//设置小时为0点
d.setMinutes(0);//设置分钟为0
d.setSeconds(0);//设置秒为0
d.setMilliseconds(0);//设置毫秒为0
console.log(d);//9012-12-31 00:00:00
- 案例
取得一个月的最后一天是几号。 需要信息:年、月
//取得一个月的最后一天是几号。 需要信息:年、月
//假设我们要求9012年的12月的最后一天是几号
var b=new Date(9013,0,0);//月份从0开始
//那么,我们可以先找到9013年的1月1日,然后减1,就是9012年12月的最后一天 那个0 就相当于1-1 就是1月1号的前一天。
var date=b.getDate(); //然后得到日期
console.log(date);//31
将日期设定为20天之后
//将日期设定为20天之后
var d=new Date();//得到当前系统时间
var date=d.getDate();//得到日期
date=date+20;//日期加20
d.setDate(date);//设置新的日期
console.log(d);
从当前时间到11月31日还有多少天?
//从当前时间到11月31日还有多少天?
var a=new Date();//得到当前系统时间
var b=new Date(2019,10,31);//定义新的日期对象为2019年11月31日
//月从0开始
var c=b-a;//将一个日期对象向数字转换会得到日期对象的时间戳
c=Math.floor(c/(1000*60*60*24));//得到的值为毫秒数,要转换成天
console.log(c);//43