预解释的初级理解
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>
以上是关于预解释的初级理解的主要内容,如果未能解决你的问题,请参考以下文章