javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > JS中??和||区别

JavaScript中的 ?? 和 || 有那些区别详解

作者:Web小白菜~

||运算符用于逻辑判断,返回第一个为真的操作数,而 ?? 运算符用于空值合并,返回第一个非空的操作数,这篇文章主要介绍了JavaScript中的 ?? 和 || 有那些区别的相关资料,需要的朋友可以参考下

在JavaScript中,??(空值合并运算符)和||(逻辑或运算符)都可以用来处理变量值,但是切记这俩玩意不一样,是有区别的。

??(空值合并运算符)

空值合并运算符 (??) 是一个逻辑运算符,当左侧的操作数为 nullundefined 时,返回右侧的操作数;否则,返回左侧的操作数。

let a = null;
let b = 5;
let result = a ?? b; // result 将是 5,因为 a 是 null

let c = 0;
let d = "hello";
let result2 = c ?? d; // result2 将是 0,因为 c 不是 null 或 undefined

||(逻辑或运算符)

逻辑或运算符 (||) 是一个短路逻辑运算符,当左侧的操作数为假值(如 false、0、""、null、undefined 或 NaN)时,返回右侧的操作数;否则,返回左侧的操作数。

let x = 0;
let y = "default";
let result3 = x || y; // result3 将是 "default",因为 0 被视为假值

let z = null;
let w = "hello";
let result4 = z || w; // result4 将是 "hello",因为 null 被视为假值


let result5 = null || undefined || 0 || "";  // 全是假值时,会返回最后一个  ''

区别

假值检查:

类型强制转换:

使用场景:

总结 

到此这篇关于JavaScript中的 ?? 和 || 有那些区别的文章就介绍到这了,更多相关JS中??和||区别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文