Javascript 如果对象不',则返回未定义;在检查属性时不存在

Javascript 如果对象不',则返回未定义;在检查属性时不存在,javascript,Javascript,默认行为是,尝试访问不存在的对象的属性会生成错误: console.log(organization.name) 如果组织未定义,将生成错误。当试图访问一个不存在的对象的属性时,有没有一种方法可以改变这个默认行为并只接收未定义的?有时,它会很有帮助,而不是记住检查对象是否已定义您可以使用可选链接 可选链接运算符?。允许读取位于连接对象链深处的属性值,而无需明确验证链中的每个引用是否有效 const组织=未定义; console.log(组织?.name)有多种解决方案: 使用或“我喜欢新功

默认行为是,尝试访问不存在的对象的属性会生成错误:

console.log(organization.name)

如果组织未定义,将生成错误。当试图访问一个不存在的对象的属性时,有没有一种方法可以改变这个默认行为并只接收未定义的?有时,它会很有帮助,而不是记住检查对象是否已定义

您可以使用可选链接

可选链接运算符
?。
允许读取位于连接对象链深处的属性值,而无需明确验证链中的每个引用是否有效

const组织=未定义;

console.log(组织?.name)有多种解决方案:

使用或“我喜欢新功能,或我正在使用巴别塔”方法: 不过,可选的链接是最干净的解决方案。如果您需要复古兼容性,您应该使用巴贝尔或其他一些transpiler,虽然

let组织=未定义
console.log(组织?.name)
组织={name:“foo”}

console.log(组织?.name)
这是否回答了您的问题?非常感谢您的详细回答!