[Javascript] js中定义变量

遇到的一个坑:

function demo(){
    var a = b = 1;
    // Code
}

这时候b会变成全局变量,在函数外部也可以访问到,比如:

demo();
console.log(a);  // undefined
console.log(b);  // 1

因为在对var a = b = 1;解析的时候,会解析成:

b = 1;
var a = b;

JS中不使用var关键字进行变量声明的时候,则认为是全局变量。

你可能感兴趣的:([Javascript] js中定义变量)