作为explained here,?
运算符可用于将函数参数标记为可选。 ?
运算符对接口参数的意义是什么?例如,如果我们有这个打字稿界面:
export interface Person {
phone?: number;
name?: string;
}
实现接口的类:
class Customer implements Person {
}
Customer
现在是否正确实现了Person,因为Person
界面上的所有属性都是可选的?
答案 0 :(得分:5)
简短回答是肯定的,Customer
正确实现Person
,因为接口的所有字段都是可选的,任何对象都将正确实现接口。
此界面的用处是:
phone
必须定义为number
)Person
的字段(您应该检查它们是undefined
),但该函数例如保证它将不访问Person
参数的任何其他字段。