我有这些声明:
var a;
var b = 1;
var c = 2;
var d = a || b, c;
d
是1,那么表达式中,c
的含义是什么?
答案 0 :(得分:5)
构造
var d=a||b, c;
做两件事:
d
并为其指定值a||b
c
变量由于c
已经宣布,我会说这完全没用。
答案 1 :(得分:3)
var d = a || b, c;
只是意味着var d = a || b; var c;
“逗号”用于分隔多个变量的声明。由于,c
已定义var c = 2;
,因此不需要c
。
答案 2 :(得分:2)
您的代码有效解释如下:
var a; // Variable declarations are hoisted to top of scope
var b;
var c;
var d;
b = 1;
c = 2;
d = a || b;
所以最终的c
声明根本不做任何事情。请注意,var x = y, z;
只是一个变量语句,它包含两个声明(其中一个包含赋值)。