-1
私は2D配列 "javascript"を持っています。そのため、以下のコードと同じ1D配列で各行を初期化します。私はallcolorの各列の各要素を変更するjavascriptの2D配列の要素を上書きする理由
var allcolor=[];
var color=["#f73214","#f5f714","#54f714","#141df7","#006400","#556B2F","#2F4F4F",
"#808080","#8FBC8F","#4B0082","#9400D3","#483D8B","#1E90FF","#00BFFF",
"#FFFF00","#ADFF2F","#9932CC","#FF69B4","#FF1493","#8B0000","#8B4513",
"#B22222","#CD5C5C","#E9967A","#FF8C00","#DAA520","#F0E68C","#FFFAF0",
"#000000"];
for(p=0;p<x.length;p++){
allcolor[p]=color;
}
は、allcolorの全ての行の他の要素を上書きします。このコードを実行すると、すべての[..] [0]とすべての[..] [4]が同じ値 '#000000'と '#ffffff'であることがわかります。
console.log(allcolor);
allcolor[0][0]='#000000';
console.log(allcolor);
allcolor[0][4]='#ffffff';
console.log(allcolor);
1行の値を変更するにはどうすればよいですか?
を行う 'X'とは何ですか? 'color'を使うつもりはありませんか? – Arg0n
@Emissary 1D配列を別の1D配列に置きます –
そして、varキーワードを使用して、不要にグローバル変数を初期化しました。 –