场景:定义一个对象有时候需要使用这个属性,有时候不需要这个属性
**对象声明属性的时候如果定义了属性,赋值的时候就必须有这个属性值,但是可以使用可选属性来解决**
用法是,给可选的属性前面加 冒号:’ : ‘
let obj : {a:string,b?:number} //可选属性b
obj = { a:'aaa' }
console.log(obj) //{ a:'aaa' }
obj = {a:'aaa',b:100}
console.log(obj) // {a:'aaa',b:100}
上面例子中,声明的对象有可选属性b, 必选属性a 如果a属性没有赋值则会报错,如果b属性有赋值或者没有赋值都可正常运行