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); // 小李