2017-05-26 1 views
0

私はテーブルを使って作業していますが、0を持つすべての行を削除したいと思います。私はそうするために次のようにコード化しました。0で行を削除する

// eliminating null elements 
var k= 0; 
for (var i =0; i<operations_row;i++){ 
    if (Total_Ocurrances[i]!=0) { 
     Cause_code_final[k]= Cause_Row_Operations[i]; 
     Des_final[k]= Description[i]; 
     Total_DT_final[k]= Total_DT[i]; 
     Total_O_final[k]= Total_Ocurrances[i]; 
    k= k +1; 



    } 
} 

変数はすべて数値形式です。何らかの理由ですべての0が取り出されるわけではなく、0以外のいくつかの要素も失われるわけではないため、発生列に0がないたびに新しい値を各列に保存することになっています。

+0

なぜこれに 'jquery'を使用しませんか?単純に '.remove'メソッドを使ってあなたの仕事を行います –

+3

operations_rowとは何ですか?私たちはいくつかの情報が欠落していると思います。 :) – sheriffderek

+0

あなたは実際にテーブルを扱っているわけではありません。同じインデックスの要素がお互いに属していると思われる少なくとも9つの別々の配列で作業しています。これは不正なデータ構造です。代わりに* one *配列のオブジェクトを使用してください。 – trincot

答えて

0

コード全体はわかりませんが、可能であればオブジェクトで作業し、配列内でフィルタメソッドを使用する必要があります。

var arr = [ 
    { 
     Total_Ocurrances=1, 
     Cause_code_final=10, 
     Des_final='asdfasf', 
     Total_DT_final=new Date(some_value), 
     Total_O_final=100 
    }, 
    { 
     Total_Ocurrances=0, 
     Cause_code_final=12, 
     Des_final='qwerqwer', 
     Total_DT_final=new Date(another_value), 
     Total_O_final=1002 
    } 
] 

var finalArr = arr.filter((item) => { 
    return item.Total_Ocurrances != 0; 
}); 
関連する問題