実現したいこと
2次元配列を条件で絞り込み出力する下記プログラムを作成しました。
実運用での配列は行・列ともにより膨大になるため、より高速化できる記述方法がないか模索しています。
2次元配列を行列とみなし、各列ごとに条件を指定します。
もし条件の指定がない(null)ときはその列の絞り込みは行わないこととします。
nullという条件ばない場合の処理は簡単だと思うのですが、nullがあることにより複雑になってしまっています。
よろしくお願い致します。
該当のソースコード
Javascript
1let item_list = [ 2 [0,0,0], 3 [0,1,0], 4 [1,0,0], 5 [2,0,0], 6 [2,0,1], 7 [0,1,2] 8 ]; 9 10function search_list(items,column,param){ 11 let list = []; 12 for(let item in items){ 13 if(param!=null){ 14 if(items[item][column]==param){ 15 list.push(items[item]); 16 }; 17 }else{ 18 list = items 19 }; 20 }; 21 return list; 22}; 23 24item_list0 = search_list(item_list,0,0); //配列1列目を検索 25item_list1 = search_list(item_list0,1,null); //配列2列目を検索 26item_list2 = search_list(item_list1,2,null); //配列3列目を検索 27 28console.log(item_list2); //出力[ [ 0, 0, 0 ], [ 0, 1, 0 ], [ 0, 1, 2 ] ] 29
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。