禁止数组构造函数
注意:此规则是
recommended
规则集的一部分。在
deno.json
中启用完整集合{ "lint": { "rules": { "tags": ["recommended"] } } }
使用 Deno CLI 启用完整集合
deno lint --rules-tags=recommended
通过将其添加到
deno.json
文件中的 include
或 exclude
数组,可以显式地将此规则包含或排除在当前标签中的规则之外。{ "lint": { "rules": { "include": ["no-array-constructor"], "exclude": ["no-array-constructor"] } } }
强制使用数组构造的传统用法。
数组的构造通常通过字面量表示法完成,例如 []
或 [1, 2, 3]
。不推荐使用 new Array()
,也不推荐使用 new Array(1, 2, 3)
。这有两个原因。第一个原因是,当只提供一个参数时,它定义了数组的长度,而提供多个参数时,则会填充一个没有固定大小的数组。当仅使用字面量表示法创建预填充数组时,可以避免这种混淆。避免使用 Array
构造函数的第二个原因是,全局的 Array
对象可能被重新定义。
此规则的一个例外是创建固定大小的新数组时,例如 new Array(6)
。这是创建固定长度数组的传统方式。
无效示例
// This is 4 elements, not a size 100 array of 3 elements
const a = new Array(100, 1, 2, 3);
const b = new Array(); // use [] instead
有效示例
const a = new Array(100);
const b = [];
const c = [1, 2, 3];