前言
最近有点GAP 还是要好好调整,稳步前进…
下面介绍下 ES7新特性双问号操作符 ?? 与可选链?.操作符,基本工作中天天用,那就整理一下吧
双问号【??】
value1 ?? value2
?? 在 value1 和 value2 之间,只有当 value1 为 null 或者 undefined 时取 value2 ,否则取 value1;(0,false,""被认为是有意义的,所以还是取value1)
举例:
undefined ?? 'default' //'default'
null ?? 'default' //'default'
false ?? 'default' //false
'' ?? 'default' //''
0 ?? 'default' //0
参考:MDN双引号介绍
可选链操作符【?.】
当访问多层对象属性(比如 res.data.list)时,如果属性res.data为空,则会报引用错误;所以使用可选链【 ?.】 对一个为null或者undefined属性的安全引用
举例:
let dataList = res?.data?.list`
参考:MDN引用链介绍