javascript - 如何遍历具有特定条件的对象并返回其值的数组?
问题描述
我有一个包含所有项目 ID 的数组:
const allIds = ['a1gb', 'f4qa', 'i9w9']
我还有一个对象,它的属性以这些 id 作为键:
const byId = {
a1gb: {
whatever1
},
anyOtherIdThatIDontNeed: {
whatever444
},
f4qa: {
whatever2
},
i9w9: {
whatever3
}
}
返回一个看起来像的数组的最常见方法是什么
[ { whatever1 }, { whatever2 }, { whatever3 } ]
并在我的最终数组中跳过我不想要的 ID?
这是带有 id 的数组的日志:
这是对象的日志,我需要从中返回一个数组,其中的键值来自该 id 数组,跳过了我不需要的数组:
PS问题是,在map函数的返回数组中,当它遇到“anyOtherIdThatIDontNeed:”时,我得到了未定义。
PPS [ ANSWER ] - Id 数组的 id 与对象的键不匹配,这就是我得到未定义的原因。
解决方案
var result = allids.map(val => ({byId[val]}))
我建议这样,如果数组也有不需要的 id,请尝试以下代码。
var result = allids.map(val => ({byId[val]})).filter(val => val?true:false)
推荐阅读
- python-3.x - Cloudflare 和 Chromedriver - cloudflare 区分 chromedriver 和正版 chrome?
- kubernetes - 在 pi 为零的情况下运行 k3s
- java - 在给定范围内生成具有不同概率的随机数
- api - 通过 Steam Apikey 获取 SteamID
- python-3.x - 使用 Pyglet - Python 循环播放声音文件?
- flutter - 如何基于字符在 Flutter 中换行文本(不中断空格或“-”)?
- java - 安装 JavaFX 时遇到问题
- c++ - 如何使用 libusb c++ 从设备获取报告描述符
- python - 如何将 MainWindow 类的值传递给 DockWidget 的类
- pine-script - 如何仅显示某些绘制线的最新实例?