遍历对象的多个数组,寻找与Javascript中的多个数组匹配的项目

时间:2020-08-25 01:27:00

标签: javascript arrays loops object

我正在创建一个调查,其中包含不同权重的问题。

下面的每个变量类似于一个类别,其中填充了相应的问题ID

我想按类别进行计算,这将是每个数组中每个相应问题ID的得分。

// Category arrays 
let $A = ['1', '3', '8'];
let $B = ['2', '4'];
let $C = ['5', '6', '7'];

for (var j = 0; j < app.length; j++) {
    var subArr = app[j]['questions'];
}

像这样

subArr prints out 4 separate array of objects

像这样

[{id:1, score: 4}, {id:2, score: 4}, {id:3, score: 3}]
[{id:4, score: 3}, {id:5, score: 2}, {id:6, score: 1}]
[{id:7 , score: 3}, {id:8, score: 3}]

因此,以伪代码而言,我想遍历subArr,并找到与每个类别数组中的id匹配的每个对象。然后,我想将每个匹配项的得分保存在单独的数组中,然后计算平均值

所以我最终得到每个类别的平均分数

到目前为止,我已经知道了

像这样

for (var j = 0; j < app.length; j++) {
    var subArr = app[j]['questions'];
    console.log('questions', subArr)

        arrOfArr.forEach(function(dataId) {
            console.log(dataId)
                    const $findMatchingId = subArr.find((item)=>item.id == dataId);
                                          
        })
}

像这样

when i console.log($findMatchingId) it returns undefined ?

0 个答案:

没有答案