介绍
用于声明对象的 属性可选(可存在也可不存在)
应用场景
类似 TypeScript:函数可选形参(使用问号?),比如 Student 对象中有 zuoji (座机号码)属性,现在大部分家庭已经没有座机了,所以该属性可以不传值
语法
interface/type 类型名 {
可选属性?: 类型;
必选属性: 类型;
}
例子
定义接口
zuoji 可选,name 必选
interface User {
name: string;
zuoji?: string; // ? 表示 zuoji 可选
}
创建对象
无 zuoji 属性:
const user1: User = { name: "张三" };
有 zuoji 属性:
const user2: User = { name: "李四", zuoji: "13812345678" };