JavaScript变量赋值

// js中变量赋值是从右往左赋值的
var a=1,b=2,c=3;
(function() {
  var a=b=1;
  console.log(a); // 1
  console.log(b); // 1
})();

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

  上述例子中可以将函数内的表达式分为两步:

b = 1var a = b;

  因为b未用var定义,所以b虽在局部作用域(函数体内),但却是全局变量。(变量污染),最后呈现的结果,由于函数内的b变量污染了全局的b变量,因此,打印为4个1。

原文地址:https://www.cnblogs.com/wssjzw/p/9355818.html