私は、多次元配列から単一の結果を取得し、その結果をオブジェクト配列に含まれる各オブジェクトにプッシュしようとしています。オブジェクト配列内の既存の各オブジェクトに新しいプロパティをプッシュする方法はありますか?
ここは私のコードです。
var data = {
"questions": ["Q1", "Q2", "Q3"],
"details": [{
"name": "Alex",
"values": [27, 2, 14]
}, {
"name": "Bill",
"values": [40, 94, 18]
}, {
"name": "Gary",
"values": [64, 32, 45]
}]
}
var question = "Q1";
var singleResult = [];
for (var i = 0; i < data.details.length; i++) {
var qIndex = data.questions.indexOf(question)
singleResult.push(data.details[i].values[qIndex])
}
for (var i = 0; i < singleResult.length; i++) {
data.details.push({
single: singleResult[i]
})
}
console.log(data.details)
あなたはそれがのように代わりに私は、既存の3つのオブジェクトのそれぞれの中に押し込まれる単一の結果をご希望の配列に新しいオブジェクトを推進している見ることができるように。
私の新しい配列は次のようになります。
[{
"name": "Alex",
"values": [27, 2, 14],
"single": 27
}, {
"name": "Bill",
"values": [40, 94, 18],
"single": 40
}, {
"name": "Gary",
"values": [64, 32, 45],
"single": 64
}]
私は.concat
でループを実行すると、トリックを行うだろうと思ったが、悲しいことに、それはそうではありませんでした(少なくとも私のために!)。
希望があれば、どんなヘルプやアドバイスもありがとうございます。