JS:变量的作用域
1、作用域:
指一个变量它在哪些代码范围能够被使用,这些地方就是变量的作用域
JS中的两种作用域:
1.全局作用域。2.函数作用域
2、在es5中 函数的代码块内部的代码 可以访问形参变量 也可以访问外部的变量(全局) 就近优先
3、函数外面的代码不能直接访问函数内部的变量
例:
a = 100 console.log(a) // 局部变量就是函数内部能使用 外部不能使用的变量( var,形参) function fn(a) { var b = 20 console.log(a, b) } fn(100) console.log(a) console.log(b)
结果:
例2:
var obj = { name: "karen"; }; function fn(n) { //隐式操作 var n=内存中的数那个传入的对象 //n.name="jack" 其实没有修改n的值 n = { name: "jack"; } //改变n的值 } fn(obj); //obj取值操作 取的是一个引用的对象 console.log(obj.name); //karen