JavaScript中的Date对象

Posted 不懂老爱瞎逼逼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript中的Date对象相关的知识,希望对你有一定的参考价值。

一、Date对象

1、Date用于获取当前时间

var d = new Date();
console.log(d); // 向控制台输出内容
console.dir(d); // 查看对象的内容信息

2、getFullYear() 获取月份

var year = d.getFullYear();
//获取当前年份
console.log(year);

3、getMonth() 获取月份

var month = d.getMonth() + 1;
//获取当前月份
console.log(month);

注:javascript规定,获取的月份,数值是 0-11 , 0表示1月份,11表示12月份,实际月份的数值,是获取结果 +1
4、getDay() 获取星期

var week = d.getDay();
//获取当前星期
console.log(week); 

注:获取星期的结果是 0-6的数值,0表示星期日,其他的正常表示
5、getHours() 获取小时

var house = d.getHours();
//获取当前小时
console.log(house);

6、getMinutes() 获取分钟

var minute = d.getMinutes();
//获取当前分钟
console.log(minute);

7、getSeconds() 获取秒

var second = d.getSeconds();
//获取当前秒
console.log(second);

二、时间戳

1、简单的时间戳:实际项目中,往往用于计算时间,来衡量时间差

var d = new Date();
var times = d.getTime();
//获取当前时间
console.log(times);

2、复杂时间戳:主要用于倒计时

//定义结束时间的时间对象
var end = new Date(‘2020-4-1 0:0:0‘);
//获取开始时间对象
var start = new Date();
//计算开始时间与结束时间之间的总秒数,如果不/1000是毫秒
var times = parseInt((end.getTime() - start.getTime() )/ 1000 );
console.log(times)
//利用总时间计算天数
var day = parseInt( times / (24*60*60));
console.log(day);
//利用总时间ay求在总天数之后还有多少小时
var hour = parseInt( ( times % (24*60*60) ) / ( 60 * 60) );
console.log(hour);
//将剩余的秒数,转化为分钟
var minute = parseInt( ( times % (60*60) ) / 60 );
console.log(minute);
//求剩余的秒数
var second = times % 60 ;
console.log(second);
//输出时间
document.write( `距离结束时间,还有${day}天,${hour}小时,${minute}分钟,${second}秒,请您抓紧时间付款,或者找老公付款` );

三、定时器、取消定时器

1、定时器:setInterval(参数1 , 参数2)
例子1:

var interval1 = setInterval( function(){
document.write(‘张老师帅极了‘ + ‘<br>‘);
} , 1000);
例子2:
var interval2 = setInterval( function(){
document.write(‘张老师不仅帅,还是非常帅‘ + ‘<br>‘);
} , 1000);

注:
setInterval(参数1 , 参数2)
A、参数1:要执行的程序,必须是一个函数的形式 function(){ 定义程序 }
B、参数2:执行程序的间隔时间,单位是毫秒
C、定时器第0秒不会执行,从打开的第二秒开始

2、终止定时器:clearInterval(需要清除的定时器参数或下标)

// 定义一个变量,存储执行次数
var int = 0;
var interval3 = setInterval( function(){
document.write(‘张老师不仅帅,还是非常帅‘ + ‘<br>‘);
// 每次执行,变量自增
int++;
// 当满足某个我们设定的条件时
if(int == 10){
// 清除定时器,终止程序的执行
clearInterval(interval3);
}
} , 1000);
console.log(interval3);

注:
A、清除定时器尽量不要用下标,用实际变量名称
B、清除定时器,实际上就是关闭整个程序中的第几个定时器

四、延时器、取消延时器

1、延时器setTimeout

setInterval(function(){} , 1000);
// 延时5秒钟之后,执行程序
var timeout1 = setTimeout( function(){
console.log(‘张老师还是很帅的‘);
} , 5000 ) 
console.log(timeout1);

2、取消延时器clearInterval

setInterval(function(){} , 1000);
// 延时5秒钟之后,执行程序
var timeout1 = setTimeout( function(){
console.log(‘张老师还是很帅的‘);
} , 5000 ) 
console.log(timeout1);
//取消延时器
clearInterval(timeout1);

五、延时器的特别说明:
1, 变量存储的也是序号,表示的是第几个延时器
2, JavaScript中,定时器和延时器,的计数是不做区分的,也就是第几个定时器,和第几个延时器,是一起计算的,不做区分
setInterval(function(){} , 1000); 1
setInterval(function(){} , 1000); 2
settimeout(function(){} , 1000); 3
setInterval(function(){} , 1000); 4
settimeout(function(){} , 1000); 5
3, clearInterval 和 clearTimout 是不做区分的
4、clearInterval 可以清除定时器,也可以清除延时器
5、clearTimout 可以清楚延时器,也可以清除定时器

以上是关于JavaScript中的Date对象的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——JS中的面向对象编程

VSCode自定义代码片段9——JS中的面向对象编程

VSCode自定义代码片段12——JavaScript的Promise对象

VSCode自定义代码片段12——JavaScript的Promise对象

JavaScript中的Date对象

javascript中的Date对象