javascript - 动态访问多级对象键
问题描述
我有一个 JavaScript 对象,它有多个层次,例如:
let obj = [
{
"testKeyOne": "one",
"testKeyTwo": "two"
},
{
"testKeyThree": "three",
"testKeyFour": "four",
"testKeyFive": {
"testKeyFiveAndAHalf": "5.5"
"testKeyFiveAndThreeQuarters": "5.75"
}
},
]
我还有一个数组作为我需要访问的键,例如,如果我正在寻找5.5
一个,
let array = [1, "testKeyFive", "testKeyFiveAndAHalf"]
虽然如果我正在寻找我的数组也可能看起来像这样"one"
let array = [0, "testKeyOne"]
有没有办法使用数组来访问所需的值?
这是我第一次提出问题,所以如果我搞砸了,或者有什么不清楚或需要更改的地方,我深表歉意。
谢谢!
解决方案
是的。您可以在数组上使用 reduce:
let result = array.reduce((value, entry) => value[entry], obj);
推荐阅读
- python - einsum 或 opt-einsum 优化路径是否考虑张量的维数?
- flutter - 复制和粘贴在 Flutter 中的 TextFormField 和 TextField 中不起作用
- mysql - 在 MySQL 中增加唯一 ID
- powerbi - 用户能够打印或导出嵌入式 PowerBI 报告
- google-analytics - 如何从 Google Analytics(分析)帐户获得总点击量?
- regex - 如何在 Scala 中将第 n 次出现的特殊字符(例如管道分隔符)替换为另一个?
- discord - discord.py 当前时间命令
- reactjs - url 中添加了不必要的 %E2%80%8B
- javascript - cachedResponse 没有标头
- python - 如果数据不在MongoDB中的数组中,如何删除