unicorn/no-array-for-each 限制
它做了什么
禁止使用 Array#forEach,推荐使用 for 循环。
为什么这是不好的?
与 forEach 方法相比,for…of 语句 的优势可能包括:
- 执行速度更快
- 可读性更好
- 可以使用
break或return提前退出
此外,如果你使用 TypeScript,使用 for…of 还有额外好处,因为它不会跨越函数边界。这意味着在当前作用域中提前进行的类型缩小操作,在循环内部仍然有效(无需重新进行类型缩小)。同时,循环内任何被修改的变量也会被正确识别,从而判断该变量是否已被使用。
示例
此规则的 错误 代码示例:
javascript
const foo = [1, 2, 3];
foo.forEach((element) => {
/* ... */
});此规则的 正确 代码示例:
javascript
const foo = [1, 2, 3];
for (const element of foo) {
/* ... */
}如何使用
要通过配置文件或 CLI 启用 此规则,可以使用:
json
{
"rules": {
"unicorn/no-array-for-each": "error"
}
}bash
oxlint --deny unicorn/no-array-for-each