deno.com

优先使用 as const

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

建议使用常量断言(as const),而不是显式指定字面量类型或使用类型断言。

当声明一个基本字面量类型的新变量时,有三种方式:

  1. 添加显式类型注解
  2. 使用普通类型断言(如 as "foo"<"foo">
  3. 使用常量断言(as const

此 lint 规则建议使用常量断言,因为它通常会使代码更安全。有关常量断言的更多详细信息,请参阅官方手册

无效示例

let a: 2 = 2; // type annotation
let b = 2 as 2; // type assertion
let c = <2> 2; // type assertion
let d = { foo: 1 as 1 }; // type assertion

有效示例

let a = 2 as const;
let b = 2 as const;
let c = 2 as const;
let d = { foo: 1 as const };

let x = 2;
let y: string = "hello";
let z: number = someVariable;

您找到所需内容了吗?

隐私政策