作用域分类
- 全局作用域-->全局变量;
- 局部作用域-->局部变量(只有在函数里定义变量为局部变量)
-
块作用域:{}
全局变量与局部变量
直接var声明,函数中直接复制未声明也是全局变量
var num=10; //num为全局变量
全局变量与局部变量二者主要区别为:
全局占内存,局部不占
作用域链:内部函数访问外部函数,采取链式查找决定取那个值
运行js步骤
- 预解析 :预解析js引擎会把js里面所有的 var还有 function提升到当前作用域的最前面
- 代码执行:代码执行按照代码书写的顺序从上往下执行
function f1(){
var a=b=c=9;//-->var a=9;b=9;c=9(b,c为全局)
var a=9,b=9,c=9;
}