ホームページ >ウェブフロントエンド >jsチュートリアル >特定の基準に基づいて JavaScript 配列からオブジェクトを削除する方法

特定の基準に基づいて JavaScript 配列からオブジェクトを削除する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-23 00:36:20315ブラウズ

How to Remove an Object from a JavaScript Array Based on a Specific Criterion?

JavaScript を使用して配列からオブジェクトを削除する

問題:

オブジェクトを削除するにはどうすればよいですか特定の基準に基づいて配列から取得しますか?たとえば、someArray:

someArray = [{name:"Kristian", lines:"2,5,10"},
             {name:"John", lines:"1,19,26,96"}];

Desired Output:

someArray = [{name:"John", lines:"1,19,26,96"}];

から「Kristian」という名前のオブジェクトを削除したいとします。

配列から項目を削除するには、いくつかの方法があります。 JavaScript:

  1. Array.shift(): 最初の要素を削除します。
  2. Array.slice: を含む新しい配列を返します。のサブセットelements.
  3. Array.splice: 元の配列を変更し、指定されたインデックスから要素を削除します。
  4. Array.pop():最後の要素.
  5. Array.slice(0, array.length -1): 最後の要素を除くすべての要素を含む新しい配列を返します。
  6. Array.length = array.length - 1: 配列の長さを変更し、要素を削除します。 last element.

あなたの場合、Array.splice を使用して次の名前のオブジェクトを削除できます。 "Kristian":

someArray.splice(someArray.findIndex(obj => obj.name === "Kristian"), 1);

もう 1 つのオプションは、Array.filter を使用して、削除するオブジェクトを含まない新しい配列を作成することです。

const result = someArray.filter(obj => obj.name !== "Kristian");

削除したい特定のインデックスを使用するには、Array.splice:

someArray.splice(x, 1);

を使用することもできます。同じ結果を得るには Array.slice を使用します:

someArray = someArray.slice(0, x).concat(someArray.slice(x + 1));

メソッドによっては元の配列を変更するものもあれば、新しい配列を返すものもあります。特定のニーズに最も適したアプローチを選択してください。

以上が特定の基準に基づいて JavaScript 配列からオブジェクトを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。