循环阻塞
/*
for setTimeout
*/
// 我们想每次循环暂停1秒,并且输出当前的循环值。
var i=1
while (true) {
setTimeout(function() {
console.log(i)
}, 1000)
if (i=5) break
i++
}
// 返回结果 | 5
// 所以 setTimeout 显示不适用于上面场景,在它阻塞1秒的这段时间,while已经跑了5次循环,累计到了5。
/*
setInterval
*/
var i=1
var int = setInterval(function f() {
console.log(i)
if (i===10) clearInterval(int) // 停止
i++
}, 1000)
// 返回结果 (1,2,3,4,5,6,7,8,9,10)
// setInterval 就是用于解决上面这种应用场景
JavaScript 数据类型
JavaScript 数字
JavaScript 字符串
JavaScript 数组
JavaScript 对象
JavaScript Map
JavaScript Set
JavaScript null
JavaScript undefined
JavaScript 类型检测
JavaScript 包装对象
JavaScript 函数
JavaScript 参数
JavaScript 匿名函数
JavaScript 箭头函数
JavaScript 递归
JavaScript 闭包
JavaScript 生成器
JavaScript 异步
JavaScript setTimeout
JavaScript setInterval
JavaScript 回调
JavaScript Promise
JavaScript async await