js中的 ?? 和 ?.,以及 ?? 和 || 的区别


??控制合并操作符:
 
只有在??前面的数字为null、undefined的时候才会返回后面的数字;
||或运算符,不仅包含null、undefined,还包含0、''、false;


例如:

a??'哈哈'
let a = null或者let a = undefined 的时候才会返回  哈哈

a||'哈哈'
let a = null、undefined、0、''、false都会返回  哈哈
?.可选链接操作符:

表达式中的所有引用不存在也不会报错,只返回undefined

例如:

let obj = null

obj.name   //Uncaught TypeError: Cannot read property 'c' of null

obj?.name //undefined

或者

let obj = {}

obj?.name?.fristName  //undefined


语法:Obj?.Prop  Obj?.[expr]  array?.[index]  function?.(argument)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM