神奇的oc语法

84 阅读1分钟

神奇的oc(Optional Chaining)语法

可选链(Optional Chaining)

可让我们在查询具有多层级的对象时,不再需要进行冗余的各种前置校验。

let obj = {
  name: "liu",
  getAge() {
    return 22;
  },
  info: {
    title: "我是茁壮成长的小冬瓜",
  },
};

在es11 --> oc语法出现之前我们在访问深层次属性的时候我们需要进行前置校验,否则很容易命中Uncaught TypeError: Cannot read property...,这种错误,很可能会导致整个应用挂掉。

const title = obj && obj.info && obj.info.title;

现在我们可以通过oc语法非常方便安全的访问深层属性

const title = obj?.info?.title;

可选链中的 ? 表示如果问号左边表达式有值, 就会继续查询问号后面的字段。

5A7BM.gif