JavaScript可选链式的实例教程

32 阅读1分钟

可选链式运算符是一个非常有用的运算符,我们可以用它来处理对象及其属性或方法

发布时间: 2019年11月09日,最后更新时间: 2021年10月12日

可选链式运算符是一个非常有用的运算符,我们可以用它来处理对象及其属性或方法。

你有没有使用过&&操作符作为后备手段?这是我最喜欢的JavaScript功能之一。

在JavaScript中,你可以首先检查一个对象是否存在,然后尝试获取它的一个属性,像这样。

const car = null
const color = car && car.color

即使car 是空的,你也不会出错,color 被赋予了null 的值。

你可以往下走多个层次。

const car = {}
const colorName = car && car.color && car.color.name

在其他一些语言中,使用&& 可能会得到真或假,因为它通常是一个逻辑运算符。

在JavaScript中则不然,它允许我们做一些很酷的事情。

现在,这个新的可选链式运算符将让我们做得更花哨。

const color = car?.color
const colorName = car?.color?.name

如果carnullundefined ,结果将是undefined

在没有错误的情况下(而在使用&&的情况下,carundefined ,我们有一个ReferenceError: car is not defined 的错误)。