立即执行函数-执行,进入函数内,走第一个函数-异步任务,加入异步任务队列,
继续往下走 new promise 执行,打印2 循环走完,标记为成功状态.then微任务,加入微任务队列
继续往下,执行打印5
结束,先走微任务,打印3和4
执行异步任务-打印1
执行打印结果 2,5,3,4,1
----------------------------------------------
代码题---setTimeout实现--setInterval
// 7.使用setTimeout实现一个mySetInterval; function mySetInterval (callback, t) { }
// 使下面的调用每1000毫秒打印字符串'x' mySetInterval(()=> { console.log('x') }, 1000);
// 7.使用setTimeout实现一个mySetInterval; function mySetInterval (callback, t) { }
// 使下面的调用每1000毫秒打印字符串'x' mySetInterval(()=> { console.log('x') }, 1000);
function mySetInterval (callback, t) {
// console.log(callback)
// console.log(t)
setTimeout(() => {
callback()
mySetInterval(callback, t)
}, t);
}
mySetInterval(() => { console.log('x') }, 1000);