1. ホーム
  2. javascript

[解決済み] JavaScriptでキー値を元に配列内のオブジェクトを検索・削除する

2022-04-19 15:14:44

質問

ID = var の配列からオブジェクトを見つけ、見つかったら配列からオブジェクトを削除し、オブジェクトの新しい配列を返す方法について、いくつかのアプローチを試しています。

データ

[
    {"id":"88","name":"Lets go testing"},
    {"id":"99","name":"Have fun boys and girls"},
    {"id":"108","name":"You are awesome!"}
]

jQueryの$grepを使って配列の検索ができるようになりました。

var id = 88;

var result = $.grep(data, function(e){
     return e.id == id;
});

しかし、id==88のときにオブジェクト全体を削除して、以下のようなデータを返すにはどうしたらよいでしょうか。

データです。

[
    {"id":"99", "name":"Have fun boys and girls"},
    {"id":"108", "name":"You are awesome!"}
]

解決方法は?

<ブロッククオート

配列のidをgrepすることはできますが、id==88のオブジェクト全体を削除するにはどうすればよいでしょうか。

単純に反対の述語でフィルタリングしてください。

var data = $.grep(data, function(e){ 
     return e.id != id; 
});