result?.data?.erro===0什么意思
来源:3-5 请求函数的封装
localhost999
2022-03-08 21:51:12
老师,请问 ?. 是什么写法
1回答
同学你好,?. 是ES2020(ES11)新特性,意思是尝试访问对象的属性之前检查对象是否存在,防止在对象不存在时访问属性导致代码报错。可以结合如下例子理解:
1、先了解下 ?. 语法,例如:obj ?. age 可以简单的理解为它的作用与三目运算符类似,即: obj?obj.age : undefined,如果obj对象存在,那么就返回obj的age属性值,否则的话返回undefined
两者输出的结果一样
2、再来分析截图中的代码,result?.data?.errno === 0这句代码的意思就是先判断result对象是否存在,如果存在,再判断result对象下的data属性是否存在,如果存在,再判断result.data下的errno属性值是否等于0。
知道什么意思,怎么使用即可。祝学习愉快!
相似问题