有人可以解释这个功能的第二行吗?是否一次将两个变量设置为= 0?即var i = 0
和var res = 0
?如果是这样,是否有必要设置var i = 0
,考虑到它在for(i = 0 ...
等
function sumOnSteroids () {
var i, res = 0;
var number_of_params = arguments.length;
for (i = o; i < number_of_params; i++) {
res += arguments[i];
}
return res;
}
答案 0 :(得分:1)
不,i的值将是未定义的,初始化程序仅适用于“res”。要分配您需要的值:
var i = 0,
res = 0;
答案 1 :(得分:1)
一次设置两个变量,同时将var
关键字应用于两者,并对其进行范围设定。如果没有var
,它们将是window
(基本上是全局变量)的属性。
第一个(i
)为undefined
,第二个(res
)为0
。
这是一个强大的模式,因为......
var
应该是隐含的,但事实并非如此,所以我们只需要重复一次。