我试图了解逗号运算符(,(在JavaScript中的工作原理, 当它没有放在括号之间时,它似乎有不同的行为。
有人可以解释我为什么吗?
示例供参考:
var a = 1;
var b = 2;
var c = (a,b);
console.log(c);
//output : as expected
var c = a,b;
console.log(c);
//output : 1
[编辑] 标题可能有点令人困惑。 我的问题是关于昏迷运算符和var归因之间的误解,正如somone在下面解释的那样
因此,这个主题不是那个主题的副本 逗号在 JavaScript 表达式中做什么?
var c = (a,b);
上面使用逗号运算符。它的评估值为其右侧的值(即b
(。
var c = a,b;
这不使用逗号运算符。
此处的逗号字符构成var
表达式的一部分,该表达式采用逗号分隔的变量列表以在当前范围内创建,每个变量都可以有一个可选赋值。
它相当于:
var c = a;
var b;