在开发过程中有一些对象,对象会有很多层,需要一层层判断,一层层找下去可以通过可选链去解决这个问题
const user = {
address: {
street: 'xx街道',
getNum(){
return: '80号'
}
}
}
const street = user
const street = user && user.address && user.address.street
console.log(street) // xx街道
const num = user && user.address && user.address.getNum && user.address.getNum()
console.log(num) // 80号
// 可选链的写法,使用问好点的方式,就可以很方便的判断当前这个对象是否存在,或者方法是否存在
const street = user?.address?.street
console.log(street) // xx街道
const street = user?.address?.getNum?.()
console.log(num) // 80号