基本运用
1.Date相关
var d=new Date()//获取当前时间
console.log(d);
定义月份默认从0开始,所以此处是February
var d=new Date(2000,1,1,00,00,00,157)
//年月日 时分秒 毫秒
var d=new Date(2000,1,1)
//年月日
var d=new Date(2000,1)
//年月
不定义月份默认为1月
var d=new Date(2000)
//毫秒数
var d=new Date('Thu Jan 01 2000 08:00:02')
//字符串的形式
2.Date属性一(getxxx)
var d=new Date()
console.log(d.getFullYear());
//年
2020
console.log(d.getMonth()+1);
//月
8
console.log(d.getDate());
//日
10
console.log(d.getDay());
//星期
1
console.log(d.getHours());
//小时
0
console.log(d.getMinutes());
//分钟
4
console.log(d.getSeconds());
//秒
54
console.log(d.getTime());
//1970到今天的毫秒
1596989094711
console.log(d.getMilliseconds());
//当前这一秒的毫秒
711
3.Date属性二(字符串相关)
var d=new Date()
toString()
语法:NumberObject.toString(radix);
参数 | 描述 |
---|---|
radix | 可选。规定表示数字的基数,使 2 ~ 36 之间的整数。若省略该参数,则使用基数 10(即十进制)。但是要注意,如果该参数是 10 以外的其他值,则ECMAScript 标准允许实现返回任意值。 |
-
返回值:数字的字符串表示。例如,当 radix 为 2 时,NumberObject 会被转换为二进制值表示的字符串。
-
抛出:当调用该方法的对象不是 Number 时抛出 TypeError 异常。
-
console.log(d.toString());
//可把一个 Number对象转换为一个字符串,并返回结果。
输出形式看起来和var d=new Date(); console.log(d);差不多
toLocaleDateString()
语法:dateObject.toLocaleDateString();
- 返回值:dateObject 的日期部分的字符串表示,以本地时间区表示,并根据本地规则格式化。
console.log(d.toLocaleDateString());
//根据本地时间把 Date对象的日期部分转换为字符串
2020/8/11
toLocaleString()
语法:arrayObject.toLocaleString();
- 返回值:arrayObject 的本地字符串表示。
console.log(d.toLocaleString());
//把数组转换为本地字符串
2020/8/11 下午5:47:45
toLocaleTimeString()
语法:dateObject.toLocaleTimeString();
- 返回值:dateObject 的时间部分的字符串表示,以本地时间区表示,并根据本地规则格式化。
console.log(d.toLocaleTimeString());
//根据本地时间把 Date对象的时间部分转换为字符串
下午5:53:47
toTimeString()
语法:dateObject.toTimeString();
- 返回值:dateObject 的时间部分的字符串表示,由实现决定,使用本地时间表示。
console.log(d.toTimeString());
//把Date对象的时间部分转换为字符串
17:54:59 GMT+0800 (中国标准时间)
4.设置方法
var d=new Date()
setFullYear( )
语法:dateObject.setFullYear(year,month,day);
参数 | 描述 |
---|---|
year | 必需。表示年份的四位整数。用本地时间表示 |
month | 可选。表示月份的数值,介于 0 ~ 11 之间。用本地时间表示 |
day | 可选。表示月份中某一天的数值,介于 1 ~ 31 之间。用本地时间表示 |
- 返回值:返回调整过的日期的毫秒表示。
setDate( )
语法:dateObject.setDate(day);
- 返回值:调整过的日期的毫秒表示。在 ECMAScript 标准化之前,该方法什么都不返回。
参数 | 描述 |
---|---|
day | 必需。表示一个月中某一天的一个数值(1 ~ 31) |
- 以上方法运用实例:
d.setFullYear(1999);//设置年份
d.setDate(1);//设置一个月中的某一天
console.log(d.toLocaleString());//转换为字符串输出
1999/8/1 下午10:12:54
5.实例:计算日期相差天数
注意:月份默认从0开始,所以此处相当于2020-06-10
var day2=new Date(2020,05,10)//要计算的日期
var d=new Date()//获取当前日期
console.log(Math.abs((day2.getTime()-d.getTime())/1000/60/60/24));//将相差的毫秒数转换为天数
6.注意
当设置的月份或天数超出范围时,输出结果会自动进位
var d=new Date(2020,0,32);
console.log(d.toLocaleString());
2020/2/1 上午12:00:00