预解释的初级理解

Posted 花花

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了预解释的初级理解相关的知识,希望对你有一定的参考价值。

 

1.当浏览器加载html页面的时候,提供一个全局js代码执行的环境,即全局作用域
2.预解释:在当前作用域中,js代码执行之前浏览器会首先把var定义,把function定义且赋值(遇到function开一个内存空间地址,里面存函数内容的字符串)
3.预解释只发生在当前作用域,,如开始在window下预解释 函数执行的时候才会对函数中预解释因为作用域变了
4.js中内存的分类:栈内存和堆内存,栈内存用来提供js执行的环境(全局作用域 私有作用域),堆内存是存储引用数据类型的值(对象的键值对,函数存储的是代码字符串)

代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>

    <script>
    console.log(a) // undefined
    console.log(fn) // "function fn() { console.log(1); }"
        var a = 0;
        function fn () {
            console.log(2)
        }
    </script>
</body>
</html>

 

 点击这里查看详情

 

以上是关于预解释的初级理解的主要内容,如果未能解决你的问题,请参考以下文章

我理解的js中预解释

JS 预解释相关理解

关于预解释的理解

js对代码解析机制

JavaScript预编译

[AndroidStudio]_[初级]_[配置自动完成的代码片段]