javascript - 使用 find 未定义嵌套对象
问题描述
const value = data.find(t => t.user).name;
给出上面的代码,如果用户为空,我的应用程序会中断,我能做些什么回退?我觉得这可以重复:
data.find(t => t.user) && data.find(t => t.user).name;
解决方案
您可以简单地使用可选链接运算符。value
然后将相等undefined
并且您不会遇到错误:
const data = [{}];
const value = data.find(t => t.user === 'someUserId')?.name;
console.log(value);
推荐阅读
- cookies - 为什么这个 localhost cookie 不在浏览器中设置?
- mysql - 类似查询中的mysql比较运算符不起作用
- pandas - Pivot_table 返回所有 NAN
- java - 无法获取对象数组的输入
- django - 从 django 模型中的保存方法中取消保存
- sql-server - gpg: 没有找到有效的 OpenPGP 数据。在 Ubuntu 18.04 中安装 SQL Server 时
- python - 如何在 Docker 上运行时重定向 FastAPI 文档
- android - 如何在一个回收站视图中显示来自两个不同型号/适配器的信息
- python - 在python中迭代文本文件的更有效方法?
- php - 在php中以降序显示json中数组中的日期