オブジェクト値を別の配列から更新するのが難しいです。配列オブジェクトをJavaScriptで1つの配列で更新する
例:
mainArray = [
{ "name": "bob", "complete": "25" },
{ "name": "john", "complete": "50" },
{ "name": "mike", "complete": "75" },
];
colorArray = ["#ff0000", "#00ff00", "#0000ff"];
私は、これらの値を組み合わせた新しい配列を作成する必要があります。
for (i = 0, ilen = mainArray.length; ilen > i; i++) {
newArray.push({
name: mainArray[i].name,
complete: mainArray[i].complete,
color: '',
});
}
はどんなに私は何をすべきか、私はどちらかだけバック#0000FFを取得していないか、まったく働いて何かを得ることはできません。失敗した試行:
for (j = 0, jlen = newArray.length; jlen > j; j++) {
for (k = 0, km = colorArray.length; km > k; k++) {
newArray[j].color = colorArray[k];
}
}
ゴールを取り戻すことです。
newArray = [
{ "name": "bob", "complete": "25", "color": "#ff0000" },
{ "name": "john", "complete": "50", "color": "#00ff00" },
{ "name": "mike", "complete": "75", "color": "#0000ff" }
];
これを行うための正しい方法は何ですか?
ありがとうございます。この状況でJavaScriptがインデックスの色の配列をどのように「ループ」するかはまだ分かりません。私はドキュメンテーション/参考文献で何を調べるべきですか? – DusmaN
'i'のようなインデックスを持つループを使用するときは、配列をループしているとは考えませんが、一連の値をループすると考えてください。この場合、最初のループでは、 'i'は0、次に1、そして2、そして比較' 3
@FelixGuo素晴らしい説明 – m0meni