js基础_48、Date
创建一个Date对象
—-如果直接使用构造函数创建一个Date对象,则会封装为当前代码执行的时间
var d=new Date();
console.log(d);
上面输出结果就是当前系统的时间
创建一个指定的时间对象
需要在构造函数中传递一个表示时间的字符串作为参数
日期的格式 :月份/日/年 时:分:秒
var d=new Date("1/23/2021 15:30:10");
console.log(d);
创建日期对象,这里传入的月份假如为5,创建完日期对象后会事实上会变成6
比如new Date(2021,5,1);事实上以字符串输出结果为 2021/6/1
new Date()第3个参数默认为1,就是每个月的1号,把它设置为0时, new Date()会返回上一个月的最后一天,然后通过getDate()方法得到天数
getDate()
获取当前日期对象的日。
var d=new Date();
var d2=new Date("1/23/2021 15:30:10");
console.log(d2.getDate());
输出结果为23
getDay()
获取当前日期对象是周几
会返回一个0-6的值;0:周日。1:周一
var d=new Date();
var d2=new Date("1/23/2021 15:30:10");
console.log(d.getDay());
输出结果为6,表示周六。
getMonth()
获取当前时间对象的月份
—-会返回一个0-11的值
0:1月
11:12月
var d=new Date();
var d2=new Date("1/23/2021 15:30:10");
console.log(d2.getMonth());
输出结果为0:表示1月
getFullYear()
获取当前日期对象的年份
var d=new Date();
var d2=new Date("1/23/2021 15:30:10");
console.log(d2.getFullYear());
输出结果为2021
getHours()
返回Date对象的当前小时(0-23);
getMinutes()
返回Date对象的当前分钟数(0-59);
getSeconds()
返回Date对象的当前秒数(0-59);
getMilliseconds()
返回Date对象的当前毫秒数(0-999);
getTime()
返回Date对象的时间戳;
—-时间戳,指的是从格林威治标准时间的1970年1月1日0时0分0秒到当前日期所花费的毫秒数(1秒=1000毫秒)
计算机底层在保存时间时都是使用时间戳,为了 统一时间。
时间戳单位是毫秒
比如:
var d=new Date();
var d2=new Date("1/23/2021 15:30:10");
console.log(d2.getTime()/1000/60/60/24/365);
利用得到的时间戳可以换算时间差,输出结果如下:
我们用北京时间的1970年1月1日0时0分0秒与格林威治时间使用getTime()计算时间戳会得到一个负数,这个负数转换为小时刚好为8小时,证明我们时间比格林威治时间早8小时。
var d=new Date();
var d2=new Date("1/1/1970 0:0:0");
console.log(d2.getTime());
获取当前的时间戳
Date.now();
利用时间戳来测试代码执行的的性能
var start= Date.now();
for (var i=0;i<100;i++) {
console.log(i);
}
var end=Date.now();
var jg=end-start;
console.log("执行了"+jg+"毫秒");
输出结果: