爲什麼此代碼返回10而不是2?添加數組元素Javascript
var arrToSum = [2, 4, 10];
function sumArray(array) {
var result = 0;
for (var i = array[0]; i < array.length; i++) {
result += array[i];
}
return result;
}
sumArray(arrToSum);
// function returns 10
如果下面的循環邏輯,我會增加到結果變量之後結束,因爲下一個我等於3和循環應該結束。請解釋發生了什麼。
因爲'i'從'2'運行到'2',所以只需將'arr [2]'('10')添加到' 0'。我不清楚你打算使用'var i = array [0];'。擴大一點:*「因爲下一個'i'等於'3'」*是的,你只加了一個值,循環在一次迭代後停止,但是因爲'i'從'2開始'你是添加'arr [2]',而不是'arr [0]'。順便說一句,如果你想明白你的代碼在做什麼,設置一個斷點,一步一步通過你的代碼並檢查變量。 –
因爲'array [2]'是10 –