介绍
在 JavaScript 开发中,访问对象的属性或方法时常常会遇到空值或未定义的情况,这时如果不进行判断,就会引发异常。ES11 中新增了 Optional Chaining 操作符,可以通过一种简洁且安全的方式访问深层次的嵌套属性或方法。
Optional Chaining 操作符
Optional Chaining 操作符(?.)是一种类似于点号(.)的操作符,它可以在一个属性或方法的前面添加一个问号(?),表示如果前面的对象未定义或为空,则整个表达式会短路并直接返回 undefined。
例如,如果我们有一个对象 person,它包含了一个可选的 address 对象,那么可以这样安全地获取 address 中的 city 属性:
let city = person?.address?.city;
上面的代码中,如果 person 或 address 为 undefined,city 的值就是 undefined。
示例
下面是一个使用 Optional Chaining 操作符的示例:
-- -------------------- ---- ------- ----- ------ - - ----- ------ -------- - ----- ----------- ------- ------ -------- ---- --------- - -- ----- ---- - ---------------------- ------------------ -- ---------- ----- ------- - ------------------------------- --------------------- -- ---------
指导意义
Optional Chaining 操作符既能提高程序的可读性,也能减少对 null 或 undefined 的判断,使代码更加简洁,并且不必担心因为未定义的属性或方法而导致代码崩溃。在实际开发中,能够运用 Optional Chaining 操作符的场景还有很多,例如在 React 开发中,我们可以使用 Optional Chaining 操作符来获取 props 对象中的属性。
结论
Optional Chaining 操作符是一项非常有用的新特性,它可以帮助我们更加安全、简洁地访问对象的属性和方法,减少不必要的判断和异常处理。如果您还没有使用过 Optional Chaining 操作符,赶快尝试一下吧!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67346a2b0bc820c58248f2b1