es6中 ?? 与 || 区别
2023-12-25 12:11:31
es6中 ?? 与 || 区别
自我记录
??
和||
都是逻辑运算符,但它们的作用不同。
??
是空值合并运算符,它用于检查左侧的表达式是否为null
或undefined
。如果是null
或undefined
,则返回右侧的表达式;如果不是,则返回左侧的表达式
let foo = null;
let bar = foo ?? 'default'; // bar 的值为 'default'
let baz;
let qux = baz ?? 'default'; // qux 的值为 'default'
||
是逻辑或运算符,它用于检查左侧的表达式是否为假。如果左侧的表达式为假,则返回右侧的表达式;如果左侧的表达式为真,则返回左侧的表达式。在JavaScript中,只有null
、undefined
、''
、0
、NaN
被视为假值,其他值都被视为真值。
let foo = 'hello';
let bar = foo || 'default'; // bar 的值为 'hello'
let baz;
let qux = baz || 'default'; // qux 的值为 'default'
因此,
??
和||
的区别在于它们的逻辑行为和使用场景。??
用于空值合并
,而||
用于逻辑或
。
文章来源:https://blog.csdn.net/zhgweb/article/details/135194369
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!