可选链Optional Chaining的用法

作者: 我才不要你管呐 | 来源:发表于2020-01-14 21:28 被阅读0次

    在日常开发中有时会碰到这种情况,我们需要判断一个较深层次的对象属性是否存在。用普通的if方法,需要逐个判断中间节点是否有效,代码会比较繁琐,和显得很蠢,而Optional Chaining可以帮助我们用一句代码解决。

    可选链是Js的新动态,有希望被加入到ECMAScript中去。

    一种可以在当前值可能为null的可选值上请求和调用属性、方法及下标的方法。
    接下来介绍一下它的使用方法,使用前需先安装配置

    1.安装配置

    安装

    yarn add @babel/plugin-proposal-optional-chaining --dev
    

    配置 .babelrc

    {
      "plugins": ["@babel/plugin-proposal-optional-chaining"]
    }
    

    2.需求场景

    在项目中,经常会遇到对象的属性链访问,很容易因为一个属性不存在出现Cannot read property 'xxx' of undefined的问题。Optional Chaining就解决了这一问题。

    它会先判断前面的值, 如果 undefined 或者 null, 就结束后面的调用, 直接返回 undefined。

    3.使用方法

    ?. 操作符

    a?.b
    //相当于
    a == null ? undefined : a.b
    //先判断前面的值, 如果 undefined 或者 null, 就结束后面的调用, 直接返回 undefined
    

    日常使用中再也不用用if一层一层的逐个判断中间节点是否有效,例如想要看a{b{c{d}}}中d是否存在,只需

    a?.b?.c?.d
    

    三种使用场景,静态调用、动态调用、函数调用。

    相关文章

      网友评论

        本文标题:可选链Optional Chaining的用法

        本文链接:https://www.haomeiwen.com/subject/ycfzactx.html