JS学习-作用域 & 全局局部变量 & 作用域链
作用域介绍:
通常来说,一段程序代码中所用到的名字并不总是有效和可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。作用域的使用提高了程序逻辑的局部性,增强了程序的可靠性,减少了名字冲突。
简单的来讲就是代码名字(变量)在某个范围内起作用和效果 目的是为了提高程序的可靠性,更重要的是减少命名冲突

变量的作用域: 根据作用域的不同我们变量分为全局变量和局部变量
1. 全局变量: 在全局作用域下的变量 在全局下都可以使用

2. 局部变量: 在局部作用域下的变量 或者在函数内部的变量就是局部变量

两者的执行效率对比:
从执行效率来看全局变量和局部变量
(1)全局变量只有浏览器关闭的时候才会销毁,比较占内存资源
(2)局部变量 当我们程序执行完毕就会销毁,比较节约内存资源
作用域链:内部函数访问外部函数的变量,采取的是链式查找的方式来决定取哪个值 这种结构称之为作用域链 (就近原则)

习题1分析:
console.log(num) 站在目标出发 一层一层的往外去查找

画图分析:

习题2分析:


浙公网安备 33010602011771号