美文网首页
JS中微任务与宏任务小结

JS中微任务与宏任务小结

作者: 周星星的学习笔记 | 来源:发表于2021-11-10 09:54 被阅读0次

一、哪些函数或执行方法是宏任务?

宏任务:setTimeout,setInterval,DOM事件,AJAX请求

二、哪些函数或执行方法是微任务?

微任务:Promise,async/await

三、同步代码&微任务&宏任务&DOM渲染执行的顺序如下:

同步代码 > 微任务 > DOM渲染 > 宏任务

四、代码测试示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<body>
    <div id="box"></div>
    <script>
        const content = $('<p>这是内容</p>');
        $('#box').append(content);

        console.log(1);

        setTimeout(() => {
            console.log('2 setTimeout');
            alert('2 setTimeout');
        }, 0);

        Promise.resolve().then(() => {
            console.log('3 promise');
            alert('3 promise');
        })

        console.log(4);
    </script>
    
</body>
</html>
结果1 结果2 结果3

相关文章

网友评论

      本文标题:JS中微任务与宏任务小结

      本文链接:https://www.haomeiwen.com/subject/dpsbzltx.html