我做了一個對陣列的平均值求和的函式,但是我遇到了 lint 問題,它談到了 i ,我試過 [i = 1]; 但它破壞了我的代碼。在此處輸入代碼
function average(myArray) {
let i = 0;
let summ = 0;
if (myArray.length === 0) return undefined;
let ArrayVz = myArray.length;
while (i < ArrayVz) {
summ = myArray[i = 1];
if (typeof summ === 'string') return undefined;
}
return Math.round(summ / ArrayVz);
}
uj5u.com熱心網友回復:
i 并i = 1給出不同的結果……這就是為什么你的 linter 首先抱怨使用i 。它使代碼混亂。
您似乎想要獲取 的值,i然后將其添加到下一個回圈中。
i 會這樣,但在取新值之前i = 1加一。
將您的代碼拆分為單獨的陳述句,以使其更清晰(順序明確)并且更易于維護。
summ = myArray[i];
i = 1;
不過,將它寫成for回圈而不是while回圈會更慣用。
uj5u.com熱心網友回復:
我注意到了,你沒有把我算在內。我會使用這樣的 for 回圈
function average(myArray) {
let i = 0;
let summ = 0;
if (myArray.length === 0) return undefined;
let ArrayVz = myArray.length;
for (let i = 0; i < ArrayVz.length; i ) {
summ = myArray[i];
if (typeof summ === 'string') return undefined;
}
return Math.round(summ / ArrayVz);
}
uj5u.com熱心網友回復:
你可以這樣做
function average(myArray) {
let i = 0;
let summ = 0;
if (myArray.length === 0) return undefined;
let ArrayVz = myArray.length;
for (let i = 0; i < ArrayVz.length; i ) {
summ = myArray[ i];
if (typeof summ === 'string') return undefined;
}
return Math.round(summ / ArrayVz);
}
uj5u.com熱心網友回復:
只需禁用 下一行的 lint 錯誤并使用它
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/495681.html
標籤:javascript
