2017-05-18 9 views
0

内のオブジェクトを比較します私は次のオブジェクト持っているJavaScriptの

rows = [ 
    { 
    name: "user1", 
    previlege: "Filtering" 
    }, 
    { 
    name: "user2", 
    previlege: "Reportering" 
    }, 
    { 
    name: "user3", 
    previlege: "Filtering" 
    } 
] 

、別のオブジェクト:

selected = { 
    name: "user1", 
    previlege: "Filtering" 
} 

を私は、フィルタ行をしたいとマッチしたオブジェクトを削除するので、私はそれらを比較する必要があります。私はこのようにしてみました:

rows.filter(function(object) { 
    return JSON.stringify(object) !== JSON.stringify(selected); 
}); 

しかし、それはうまくいきません。この一致したオブジェクトを削除するにはどうしたらいいですか?

+0

にフィルタの結果を保存しようとすることができます。 –

+0

'JSON.stringify()'で比較してもよろしいですか?同じ 'name'プロパティを持つオブジェクトをフィルタリングしたいのですが、' previlege'プロパティが異なっていれば、動作しません。 –

+1

あなたは何を意味しませんでしたか? –

答えて

3

あなたは、配列から要素を削除したい場合は、私がChromeのコンソールでコードを実行し、それがうまく働いた新しい配列

newArray = rows.filter(function(object) { 
    return JSON.stringify(object) !== JSON.stringify(selected); 
}); 

rows = newArray; 
+2

単に' rows = rows .filter(...) ' –

+0

あまりにも動作します、もっと明白にしようとしています:) –

関連する問題