oxc/bad-array-method-on-arguments Correctness
说明
当在 arguments 对象本身上调用数组方法时,会应用此规则。
为什么这不好?
arguments 对象 不是数组,而是类数组对象。在调用数组方法之前,应将其转换为真正的数组。 否则,由于方法不存在,将抛出 TypeError 异常。
请注意,如果你只使用 TypeScript,可能不需要此规则,因为它会在类型检查时捕获这些错误。
现代 JavaScript 中通常不建议使用 arguments,你应当优先使用 剩余参数,例如 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);
}如何使用
To enable this rule using the config file or in the CLI, you can use:
json
{
"rules": {
"oxc/bad-array-method-on-arguments": "error"
}
}ts
import { defineConfig } from "oxlint";
export default defineConfig({
rules: {
"oxc/bad-array-method-on-arguments": "error",
},
});bash
oxlint --deny oxc/bad-array-method-on-arguments版本
此规则于 v0.0.3 中添加。
