javascript - 访问嵌套对象属性的更好的 javascript 方法
问题描述
当您有一个具有多个嵌套属性的对象并且您必须“导航”其内部以达到您想要获得的内容时,例如:
var innerProperty = obj[level1][level2][level3];
也许你在达到第 2 级时会得到 undefined,所以下一个级别 undefined[level3] 会因错误而停止你的代码。
正确的方法是在尝试到达下一个级别之前检查每个级别是否存在,但是代码会开始变得笨拙:
if (obj[level1] && obj[level1][level2]) {
var innerProperty = obj[level1][level2][level3];
}
然后,您必须再次检查 innerProperty 是否未定义。
处理这个问题的最佳方法是什么,保持代码干净并且不需要在您使用的每个 if 子句中重复嵌套级别名称?
解决方案
推荐阅读
- python - 滚动应用函数必须是实数,而不是 Nonetype
- javascript - “一点帮助!” 使用 javascript 中的异步语法。我是一个老新手,我发现这有点令人沮丧
- angular - 使用 microsoft-ada-angular6 和 microsoft-graph-client,我如何验证从 AAD 收到的令牌的权限?
- python - 从 Pandas 数据框中删除 \xDD 子字符串
- alfresco - 如何从 Activiti 5.22.0 的 COMMENTS 表中获取 instanceId 的评论?
- excel - 每当我从浏览器拖放链接时,未锁定的单元格就会恢复为锁定状态
- python - 生成多个分类数据计数图以显示多年数据的趋势
- reactjs - 在 useEffect 中使用 redux 操作的最佳方法是什么?
- typescript - 使用返回与其参数相同类型的可区分联合声明 TypeScript 函数的最佳方法是什么?
- c++ - 使用辅助函数创建树函数