检查多个空值的最佳方法是什么?例如if(foo.bar.giz.mo.)X === 123)

What's the best way to check for multiple nulls? For example if(foo.bar.giz.mo.x === 123)

本文关键字:bar foo giz mo if 例如 空值 最佳 是什么 方法 检查      更新时间:2023-09-26

我记得在ECMAScript 5或6或7中听说过一种新的方法,让你可以这样做:

if(SomeOperator foo.bar.giz.mo.x === 123) 

有人知道这叫什么吗?

好消息:它被称为空传播算子?.,它正好可以满足您的需求。

坏消息:它存在于c# 6.0和Typescript中,但没有迹象表明它会出现在ES6-7中,尽管有很多关于它的建议。

不幸的是,在JS中实现这一点的最短方法仍然是
if(foo||{}.bar||{}.giz||{}.mo||{}.x === 123)