forループを実行して新しいjavascriptオブジェクトを作成し、置換せずに既存のjavascriptオブジェクトに追加しようとしています。子を置換せずにJavascriptオブジェクトに追加
例えば、私は([i]のデータだけ番号を追加する)グループなしで出力としてこれを作成しようとしている[i]をするたびに上書きされています:
{
"group1": {
"number1": "data",
"number2": "data",
"number3": "data"
},
"group2": {
"number1": "data",
"number2": "data"
}
}
私のループは次のようになります。
var array = [{
"groupName": "group1",
"number": "number1",
"data": "data"
}, {
"groupName": "group1",
"number": "number2",
"data": "data"
}, {
"groupName": "group1",
"number": "number3",
"data": "data"
}, {
"groupName": "group2",
"number": "number1",
"data": "data"
}, {
"groupName": "group2",
"number": "number2",
"data": "data"
}]
var groupLinks = {};
for(i = 0; i < array.length; i++) {
groupLinks[array[i].groupName] = {
[array[i].number]: array[i].data
}
このコードでわかるように、私のループは毎回 "group1"と "group2"を置き換えるだけです。
'number1'、' number2'などのものはすべて維持不能に見えます。 '{group1:{numbers:['data'、 'data'、 'data']}}'のような 'numbers'の配列だけではないのですか? – Phil
@Philこれは、データベースに配置するために必要な構造です(Firebase) – James