js Null合体演算子(??)と論理OR演算子(||)との違い#
Null合体演算子??
は左辺値の結果が null
またはundefined
の場合に右辺値を返却する。
論理OR演算子||
は左辺値の結果がfalsy(js falsyな値)なときに右辺値を返却する。
//Null合体演算子
console.log(null ?? "Default Value"); // "Default Value"
console.log(undefined ?? "Default Value"); // "Default Value"
console.log(0 ?? "Default Value"); // "0"
console.log('' ?? "Default Value"); // ""
console.log(false ?? "Default Value"); // "false"
// 論理OR演算子
console.log(null || "Default Value"); // "Default Value"
console.log(undefined || "Default Value"); // "Default Value"
console.log(0 || "Default Value"); // "Default Value"
console.log('' || "Default Value"); // "Default Value"
console.log(false || "Default Value"); // "Default Value"
参考#
論理和 (||) - JavaScript | MDN
Null 合体演算子 (??) - JavaScript | MDN