我正在创建一个函数,它使用数组来导航 JSON 对象,并在每一步将其键推送到结果数组。问题是,我无法让循环在每个连续循环中使用更新的对象。
JSON 对象:
myData = {
'Eye': {
'Abnormal Morphology': [
'Neoplasm',
'Abnormality of the globe'
],
'Abnormal Physiology': [
'Hemorrhage',
'Ptosis',
'Ocular pain'
]
},
'Ear': {
'Outer Ear': [
'Abnormality of the pinna',
'Abnormal location of ear',
'Extra chondra fold'
],
'Middle Ear': [
'Glue ear',
'Otitis media'
]
}
}
函数:
view = ['Ear', 'Outer Ear']
getMenuItems(object, array) {
let menuItems = Object.keys(object);
let result = [menuItems];
for (let item in array) {
object = object[item]; // use updated object each time
menuItems = Object.keys(object);
result.push(menuItems);
}
return result;
}
我期望的结果是:
[['Eye', 'Ear'], ['Outer Ear', 'Inner Ear'], ['Abnormality of the pinna', 'Abnormal location of ear', 'Extra chondra fold']]
但我得到的是:
['Eye', 'Ear']
最佳答案
关于Javascript - 更新循环外的值,然后使用新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46868277/