局部变量 or 全局变量
1.函数中的参数会覆盖局部变量声明
function fn(x) {
/**这里函数里有参数,相当于var x,它会覆盖掉函数内部局部变量的声明 */
console.log(x);
var x = 2;
console.log(x);
}
fn(3)
/**步骤解析:
* fn(3)
* function fn(3) {
* var x;
* x = 3;
* console.log(x);
* x = 2;
* console.log(x);
* }
*/
显示效果:
2. 函数内的全局变量
function fn() {
var a = b = 2; //规则:声明从左向右,赋值:从右向左
console.log(a);
}
fn()
console.log(b);
/**步骤解析:
* fn()
* function fn() {
* var a;
* b;
* b = 2; //b为全局变量
* a = b = 2;
* console.log(a);
* }
* console.log(b)
*/
显示效果: