在 JavaScript(或 TypeScript)中,如果我要引用类似的内容:
return myObj1.myObj2.myObj3.myProperty;
为了安全起见,我用类似的东西来保护它:
if (myObj1 && myObj2 && myObj3)
return myObj1.myObj2.myObj3.myProperty;
else
return null;
有没有一种更简洁的方法可以从上面的引用中获取 null 而不用 if 包围它?
请注意,由于我将在 TypeScript 应用程序中使用它,因此某些解决方案可能不适用于动态对象定义。
谢谢。
最佳答案
为此,我会使用像 lodash
这样的库:
//gets undefined if any part of the path doesn't resolve.
const answer = _.get(myObj1, "myObj2.myObj3.myProperty");
//gets null if any part of the path doesn't resolve.
const answer2 = _.get(myObj1, "myObj2.myObj3.myProperty", null);
关于javascript - 确定引用中的对象是否为空的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46978051/