for-direction
強制 "for" 迴圈更新子句以正確方向移動計數器
✅ 建議
在設定檔中使用 @eslint/js
的 recommended
設定會啟用此規則
具有永遠無法到達的停止條件的 for
迴圈,例如具有錯誤方向移動計數器的迴圈,將無限期執行。雖然有時會需要無限迴圈,但慣例是將此類迴圈構造成 while
迴圈。更常見的情況是,無限 for
迴圈是一個錯誤。
規則詳細資訊
此規則禁止計數器變數以永遠無法滿足停止條件的方式變更的 for
迴圈。例如,如果計數器變數正在遞增 (即 i++
) 且停止條件測試計數器大於零 (i >= 0
),則迴圈永遠不會結束。
此規則的不正確程式碼範例
在遊樂場中開啟
/*eslint for-direction: "error"*/
const n = -2;
此規則的正確程式碼範例
在遊樂場中開啟
/*eslint for-direction: "error"*/
for (var i = 0; i < 10; i++) {
}
for (var i = 0; 10 > i; i++) { // with counter "i" on the right
}
for (let i = 10; i >= 0; i += this.step) { // direction unknown
}
for (let i = MIN; i <= MAX; i -= 0) { // not increasing or decreasing
}
版本
此規則在 ESLint v4.0.0-beta.0 中引入。