JavaScript 中的可选链语法 ?.

?. 是 JavaScript 中的可选链语法(Optional Chaining),它是 ES11(也称为 ES2020)引入的新特性。可选链语法提供了一种简洁的方式来访问嵌套对象的属性,同时避免因为某个属性不存在而导致的错误。

可选链的主要优点是在访问嵌套对象属性时不会出现错误,而是在属性不存在时返回 undefined。这在处理深层嵌套的对象结构时非常有用,可以避免使用多个条件语句来检查每个属性是否存在。

以下是一个使用可选链的示例:

const person = {
    
    
  name: "Alice",
  address: {
    
    
    city: "New York",
    zipCode: "12345"
  }
};

console.log(person.address?.city); // 输出 "New York"
console.log(person.address?.street?.name); // 输出 undefined,而不会抛出错误

在这个示例中,person 对象有一个嵌套的 address 对象,而 address 对象没有嵌套的 street 属性。通过使用可选链语法,我们可以避免在尝试访问 street 属性时产生错误。

需要注意的是,可选链语法不仅适用于属性访问,还适用于函数调用。例如:

const obj = {
    
    
  foo: {
    
    
    bar: function() {
    
    
      return "Hello, world!";
    }
  }
};

console.log(obj.foo?.bar?.()); // 输出 "Hello, world!"
console.log(obj.baz?.()); // 输出 undefined,而不会抛出错误

总之,可选链语法是一种有助于简化代码并提高代码的健壮性的新特性,特别是在处理复杂的对象结构时。

猜你喜欢

转载自blog.csdn.net/weixin_43160662/article/details/132352987