在实际场景中,总会有下面这种代码的场景
if (this.data.$ab_user) {
this.data.$ab_user.ab_topic_ad_chaping === 2 &&
this.data.showScreenAd &&
this.initAD();
}
使用?.可简化成下面:
this.data.$ab_user?.ab_topic_ad_chaping === 2 &&
this.data.showScreenAd &&
this.initAD();
可选链 ?. 语法有三种形式:
obj?.prop —— 如果 obj 存在则返回 obj.prop,否则返回 undefined。 obj?.[prop] —— 如果obj 存在则返回 obj[prop],否则返回 undefined。 obj.method?.() —— 如果 obj.method存在则调用 obj.method(),否则返回 undefined。
若有不对,望指出,蟹蟹🙏