es6中 ?? 与 || 区别

es6中 ?? 与 || 区别

自我记录

??||都是逻辑运算符,但它们的作用不同。
??是空值合并运算符,它用于检查左侧的表达式是否为nullundefined。如果是nullundefined,则返回右侧的表达式;如果不是,则返回左侧的表达式

ts 复制代码
let foo = null;
let bar = foo ?? 'default'; // bar 的值为 'default'

let baz; 
let qux = baz ?? 'default'; // qux 的值为 'default'

||是逻辑或运算符,它用于检查左侧的表达式是否为假。如果左侧的表达式为假,则返回右侧的表达式;如果左侧的表达式为真,则返回左侧的表达式。在JavaScript中,只有nullundefined''0NaN被视为假值,其他值都被视为真值。

ts 复制代码
let foo = 'hello';
let bar = foo || 'default'; // bar 的值为 'hello'

let baz; 
let qux = baz || 'default'; // qux 的值为 'default'

因此,??||的区别在于它们的逻辑行为和使用场景。??用于空值合并,而||用于逻辑或

相关推荐
wordbaby几秒前
Hooks的革命:让React的非UI逻辑也能像UI组件一样自由复用和组合
前端·react.js
flower_tomb17 分钟前
对浏览器事件机制的理解
前端·javascript·vue.js
用户4582031531717 分钟前
使用Trae做一个简单的天狗食日动画效果试试
前端·trae
普通码农19 分钟前
Vue Element Plus X 部署后资源加载失败问题
前端
超人不会飛20 分钟前
仿豆包 H5应用核心模板:用Vue快速复刻大模型对话体验
前端·javascript·vue.js
程序张24 分钟前
Vue3+Vite 现代化前端框架👊打破 Chrome 83 内核限制
前端·javascript·vue.js
拜无忧26 分钟前
【教程】Vue中级转React终极指南-理解Vue和React的差异
前端·vue.js·react.js
web前端12327 分钟前
Android开发四大组件详解
前端
木辰風27 分钟前
idea npm install 很慢(nodejs)
前端·npm·node.js
阿笑带你学前端28 分钟前
Drift数据库开发实战:类型安全的SQLite解决方案
前端·flutter