Javascript作用域:就是代码名字(变量)在某个范围内起作用和效果,目的是为了提高程序的可靠性和减少名命名冲突
js的作用域(es6)之前:全局作用域、局部作用域
全局作用域:整个script标签中,或单独的js文件 全局变量 浏览器关闭才能销毁,比较占内存
局部作用域:在函数内部起作用和效果为局部作用域 局部变量 函数执行完毕销毁,比较节约内存
es6 新增块级作用域 {}中就是块级作用域 if{} for{} java中
var a = 1;
function fn1() {
var a = 2;
var b = '22';
fn2();
function fn2() {
var a = 3;
fn3();
function fn3() {
var a = 4;
console.log(a); // a的值?
console.log(b); // b的值?
}
}
}
fn1();
var num = 10;
fun();
function fun(){
console.log(num);
var num = 20;
}