deno.com

禁止数组构造函数

注意:此规则是 recommended 规则集的一部分。
deno.json 中启用完整集合
{
  "lint": {
    "rules": {
      "tags": ["recommended"]
    }
  }
}
使用 Deno CLI 启用完整集合
deno lint --rules-tags=recommended
通过将其添加到 deno.json 文件中的 includeexclude 数组,可以显式地将此规则包含或排除在当前标签中的规则之外。
{
  "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];

您找到所需内容了吗?

隐私政策