javascript - JS : proper way of using optional cha

我只是想了解在什么级别的对象上使用可选链接。如果我有给定的对象

foo: {
    other: {
        name: "Bill"
    }
}

而不是这样做:

if (foo && foo.other && foo.other.name) { ... }

我想使用可选链接,但我总是发现自己只是在每个级别添加 ?.

正确的方法是像这样将它添加到每个级别:

if (foo?.other?.name) {

}

或者您可以省略最后一个,因为如果它不存在,将导致 false:

if (foo?.other.name) {

}

最佳答案

您需要在前面的键可以返回 null 值的每个 级别添加 ?

const ohNo = this?.data?.set?.can?.break?.at?.any?.level;

如果您在其中遗漏了任何 ?,当前面的深度级别为 null 时,您会得到 null 引用异常...

关于javascript - JS : proper way of using optional chaining?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69105317/

相关文章:

r - 如何根据列中的两个值过滤行?

python - subprocess.call() 和 os.system() 之间的速度差异

snowflake-cloud-data-platform - 使用 Google 作为身份提供商

c# - 如何按值列表分组,然后计算每个值的条目数量

visual-studio-code - 如何在 VS Code 中按字母顺序排列纯文本列表?

git - 如何创建自定义 git/bash 脚本?

c++ - 如何区分ascii值和数字?

python - 根据列表字典python的输入获取名称

Go - 如何子类型化包装错误类?

amazon-web-services - 带有自定义 SAML 应用程序的 AWS SSO 'no