首页IT科技javascript干嘛用的(JavaScript 中 ?. 和 ?? 分别是什么?)

javascript干嘛用的(JavaScript 中 ?. 和 ?? 分别是什么?)

时间2025-07-30 05:44:35分类IT科技浏览4939
导读:?. 和 ?? 是 JavaScript 中的两个新操作符,分别是可选链操作符(optional chaining operator)和空值合并操作符(nullish coalescing operator)。...

?. 和 ?? 是 JavaScript 中的两个新操作符              ,分别是可选链操作符(optional chaining operator)和空值合并操作符(nullish coalescing operator)             。

?. 操作符

?. 可选链操作符用于访问可能为空或未定义的属性或方法                    ,它允许我们安全地访问嵌套对象的属性       ,如果中间的属性为空或未定义       ,则不会抛出错误                    ,而是返回 undefined                     。例如:

const obj = { foo: { bar: 123 } }; // 普通访问属性的方式 const x = obj.foo.bar; // x = 123 // 使用可选链操作符 const y = obj?.foo?.bar; // y = 123 // 如果对象未定义              ,则返回 undefined const z = undefined?.foo?.bar; // z = undefined

?? 操作符

?? 空值合并操作符用于检查一个变量是否为 null 或 undefined       ,如果是                    ,则返回一个默认值              ,否则返回该变量的值       。与传统的逻辑运算符 || 不同,?? 只会在左侧的值为 null 或 undefined 时返回右侧的默认值                    ,对于其他假值(如空字符串             、0                     、false 等)并不会返回默认值                    ,而是会返回它本身             。例如:

const x = undefined ?? default; // x = default const y = null ?? default; // y = default const z = value ?? default; // z = value

需要注意的是,?? 操作符需要在 ES11 及以上的版本才能使用                     。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
文件恢复神器(文件恢复大师使用教程) 社区营销和社群营销的联系(社区营销主要通过论坛,微博,qq群)