📅  最后修改于: 2023-12-03 15:01:44.390000             🧑  作者: Mango
JavaScript 是一种广泛用于客户端 Web 开发的脚本语言,可以通过它来操作页面上的元素、执行动画、响应用户输入,以及控制页面的交互行为。
在 JavaScript 中,时间脚本是一个非常基础、同时也非常重要的概念。时间脚本通常用来控制某些代码在指定的时间点执行,完成一些“定时任务”。
在 JavaScript 中,我们可以使用 setTimeout
和 setInterval
两个方法来延迟执行某些代码。
其中,setTimeout
用于在指定的时间之后执行一次指定的代码块,语法如下:
setTimeout(code, delay);
其中,code
参数表示要执行的代码块,可以是一个函数、一个字符串或一个表达式。delay
参数表示延迟多少毫秒之后再执行代码块。例如:
setTimeout(function() {
console.log("Hello, world!");
}, 1000);
上面的代码会在 1 秒钟之后,输出一条信息到控制台上。
setInterval
方法用于重复执行一个代码块,语法如下:
setInterval(code, delay);
其中,code
和 delay
参数的含义与 setTimeout
相同。例如:
var count = 0;
setInterval(function() {
count++;
console.log("Count: " + count);
}, 1000);
上面的代码会每隔 1 秒钟输出一次当前计数器的值,直到页面关闭为止。
在 JavaScript 中,我们可以使用 Date
对象来表示和计算时间。Date
对象的常用方法和属性如下表所示:
| 方法/属性 | 描述 |
| --- | --- |
| getDate()
| 返回一个月中的某一天(1~31)。 |
| getDay()
| 返回星期中的某一天(0~6)。 |
| getFullYear()
| 返回日期的年份(四位数)。 |
| getHours()
| 返回小时数(0~23)。 |
| getMilliseconds()
| 返回毫秒数(0~999)。 |
| getMinutes()
| 返回分钟数(0~59)。 |
| getMonth()
| 返回月份(0~11)。 |
| getSeconds()
| 返回秒数(0~59)。 |
| getTime()
| 返回距 1970 年 1 月 1 日之间的毫秒数。 |
| setDate()
| 设置一个月中的某一天(1~31)。 |
| setFullYear()
| 设置日期的年份(四位数)。 |
| setHours()
| 设置小时数(0~23)。 |
| setMilliseconds()
| 设置毫秒数(0~999)。 |
| setMinutes()
| 设置分钟数(0~59)。 |
| setMonth()
| 设置月份(0~11)。 |
| setSeconds()
| 设置秒数(0~59)。 |
| setTime()
| 设置距 1970 年 1 月 1 日之间的毫秒数。 |
例如,可以使用以下代码获取当前时间:
var now = new Date();
console.log(now.getFullYear() + "-" + (now.getMonth() + 1) + "-" + now.getDate());
上面的代码输出的效果为当前时间的年份-月份-日期格式,例如:2020-12-11
。
在 JavaScript 中,我们可以使用 clearTimeout
和 clearInterval
方法来取消对应的延迟执行或重复执行的代码块。
例如,可以使用以下代码来取消先前已经设置的定时器:
var timer = setTimeout(function() {
console.log("Hello, world!");
}, 1000);
clearTimeout(timer);
上面的代码会在 1 秒钟之后输出一条信息到控制台上,但是立即被取消,因此不会输出任何信息。
时间脚本是 JavaScript 编程中的一个重要部分,可以通过定时执行某些代码,实现一些重要的功能。在开发中,我们通常使用 setTimeout
和 setInterval
两个方法来延迟执行某些代码,同时使用 Date
对象来表示和计算时间。同时,我们也需要注意取消定时器的使用,以避免不必要的资源浪费。