es 可選鏈操作符(?.) 和 雙問號(??)的用法


1 可選鏈操作符(?.)

js 對象取值時 假如屬性不存在使用時可不報錯

const material= {
      data:{
        name:'測試',
      }
  }
 
正常取值為 
  console.log(material.data.name);
 
假如取值不存在的 則會報錯
  console.log(material.dataForm.name);
 
假如使用 ?. 則返回 undefined
   console.log(material.dataForm?.name);

2 雙問號 ??

 左邊的值是 null 或者 undefined,那么就返回右邊的值。

 
         
可用做判空
if(value !== null && value !== undefined && value !== ''){
//...
}
可改為
if((value??'') !== ''){
//...
}

 兩者合並使用

 const data= {
     name: "小明",
 };
 const result = data?.name1 ?? "小李";
 console.log(result); // 小李


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM