问号点(链判断操作符)和双问号(空判断操作符)


这是ES2020增加的内容

链判断操作符(?.):是否存在对象属性(不存在返回undefined且不再往下执行)

空判断操作符(??):是否值为undefined或null,是则使用默认值

let obj ={};
obj.name.age//这种情况会报错

obj.name?.age//这样会事先询问被访问属性是否是 null或undefined,是就返回undefined
obj.name??"李华"//这样会返回默认值 等于 obj.name || "李华"

文章作者: iamfugui
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 iamfugui !
评论
  目录