网络编程 
首页 > 网络编程 > 浏览文章

ES2020系列之空值合并运算符 '??'

(编辑:jimmy 日期: 2024/12/27 浏览:3 次 )

空值合并运算符 "htmlcode">

x = (a !== null && a !== undefined) "Anonymous"。
让我们使用 "htmlcode">
let firstName = null;
let lastName = null;
let nickName = "Supercoder";

// 显示第一个不是 null/undefined 的值
alert(firstName "Anonymous"); // Supercoder

与 || 比较

或运算符 || 可以与 "_blank" href="https://zh.javascript.info/logical-operators#or-finds-the-first-truthy-value" rel="external nofollow" >上一章 所讲的,我们可以用 || 替换上面示例中的 "htmlcode">

height = height "htmlcode">
let height = 0;

alert(height || 100); // 100
alert(height "color: #ff0000">优先级

"_blank" href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence#Table" rel="external nofollow" >MDN table 中为 5。

因此,"htmlcode">

let height = null;
let width = null;

// 重要:使用括号
let area = (height "htmlcode">
// 可能不正确的
let area = height "htmlcode">
let x = 1 && 2 "htmlcode">
let x = (1 && 2) "color: #ff0000">总结

空值合并运算符 "htmlcode">

// 当 height 的值为 null 或 undefined 时,将 height 的值设置为 100
height = height ?? 100;

?? 运算符的优先级非常低,只略高于 ? 和 =。

如果没有明确添加括号,不能将其与 || 或 && 一起使用。

上一篇:vue页面跳转实现页面缓存操作
下一篇:解决vue单页面 回退页面 keeplive 缓存问题