什么是作用域:浏览器给js的生存环境叫作用域. 什么是变量提升: Js代码执行前,浏览器会给一个全局作用域window Window分两个模块一个是存储模块一个是执行模块 存储模块找到所有的var和function 关键字给这些变量添加内存地址 执行模块,代码从上到下执行,遇到变量就会去存储模块查找,有和没有 有就看你赋值没有,赋值了就是后面的值没有赋值就是undefined. 没有结果就是xxx is not defined 什么是原型链:函数内部的变量被使用时,首先会在自己的私有作用域下查找…
<script type="text/javascript"> alert(i);//Uncaught ReferenceError: i is not defined i=11; </script> <script type="text/javascript"> alert(i);//undefined var i=11; alert(i);//11 </script> 代码1: var name="hel…
js 作用域 : 1.js 没有块作用域 : for (var i = 0;i < 4; i++){ } alert(i) // i = 3 2.js 没有动态作用域: function f1(){ var x = 10; f(); } function f(){ alert(x) } f1(); // x is not defined 3.词法作用域(静态作用域 或者 叫 闭包)作用域链 function main(){ function sub1(){ function sub2(){ }…