?? 和 || 运算符的区别

?? 运算符

用于处理空值(null 或 undefined)的情况。如果左侧的操作数为空(null 或 undefined),则返回右侧的操作数。如果左侧的操作数非空(非 null 或非 undefined),则返回左侧的操作数。

const someValue = null;

// 使用 ?? 运算符,如果 someValue 为空,
// 则使用默认值 "Hello!"
const result = someValue ?? "Hello";

console.log(result); // 输出:Hello

||(逻辑或运算符)

用于处理 “假值”(falsy values)的情况。除了处理空值外,它还处理其他被视为 “假值” 的情况,如空字符串、0、false、NaN。如果左侧的操作数为 “假值”,则返回右侧的操作数;否则,返回左侧的操作数。

关键区别

?? 只处理 null 和 undefined 的情况,而 || 处理更广泛的 “假值” 情况。

猜你喜欢

转载自blog.csdn.net/qq_42816270/article/details/132701758