oxc/bad-array-method-on-arguments 正确性
它做了什么
当在 arguments 对象本身上调用数组方法时,此规则会生效。
为什么这是不好的?
arguments 对象 并不是真正的数组,而是一个类数组对象。在调用数组方法之前,应将其转换为真正的数组。否则,由于该方法不存在,将抛出 TypeError 异常。
请注意,如果你仅使用 TypeScript,可能不需要此规则,因为类型检查会在编译时捕获这些错误。
在现代 JavaScript 中,通常不推荐使用 arguments,你应该优先使用剩余参数(rest parameters),例如 function sum(...args)。
示例
此规则的 错误 示例:
javascript
function add(x, y) {
return x + y;
}
function sum() {
return arguments.reduce(add, 0);
}此规则的 正确 示例:
javascript
function add(x, y) {
return x + y;
}
function sum(...args) {
return args.reduce(add, 0);
}如何使用
要通过配置文件或 CLI 启用 此规则,可以使用:
json
{
"rules": {
"oxc/bad-array-method-on-arguments": "error"
}
}bash
oxlint --deny oxc/bad-array-method-on-arguments