JS中预解析 22

64 阅读1分钟
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script>
        /*
        1.什么是预解析?
        浏览器在执行JS代码的时候会分成两部分操作:预解析以及逐行执行代码
        也就是说浏览器不会直接执行代码, 而是加工处理之后再执行,
        这个加工处理的过程, 我们就称之为预解析

        2.预解析规则
        2.1将变量声明和函数声明提升到当前作用域最前面
        2.2将剩余代码按照书写顺序依次放到后面

        3.注意点
        通过let定义的变量不会被提升(不会被预解析)
        */
        //怎么写预解析代码?
        var num;
        console.log(num);
        num=123;
        // 如果将函数赋值给一个var定义的变量, 那么函数不会被预解析, 只有变量会被预解析
        //核心:是先解析完代码,然后再执行。
       
    </script>
</body>
</html>