代码点读机 / TypeScript / ?

? TypeScript · 符号

在值层面是"如果条件成立就 A,否则 B"的岔路口;在类型层面是"这个属性可以不填"的留空框。

怎么用

条件 ? 值1 : 值2
属性?: 类型

小例子

let 得分 = 55;
let 等第 = 得分 >= 60 ? "及格" : "不及格";
interface 用户 {
  昵称?: string;
}
let u: 用户 = {};

运行结果

等第 是 "不及格";类型检查结果:u 可以没有 昵称

提醒:三元运算里冒号不能漏;读取可选属性时类型为 T | undefined,使用前需判断

官方文档:https://www.typescriptlang.org/docs/handbook/2/objects.html#optional-properties

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← TypeScript全部词条