JavaScript 配列からオブジェクトを効率的に削除するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-23 10:32:10
オリジナル
870 人が閲覧しました

How to Efficiently Remove Objects from JavaScript Arrays?

JavaScript 配列からのオブジェクトの削除

配列からのオブジェクトの削除は、JavaScript の一般的な操作です。これを実現するにはいくつかの方法がありますが、それぞれに利点と欠点があります。

非変更メソッド

  • Array.filter(): 指定されたテストに合格した要素のみを含む新しい配列を作成します。例:
let someArray = [{name: "Kristian", lines: "2,5,10"},
                 {name: "John", lines: "1,19,26,96"}];

let noJohn = someArray.filter(el => el.name !== "John");
ログイン後にコピー
  • Array.find(): 最初に一致した要素を返すか、一致が見つからない場合は未定義を返します。これを使用して、削除する特定のオブジェクトを取得します。例:
const kristian = someArray.find(el => el.name === "Kristian");
ログイン後にコピー

メソッドの変更

  • Array.splice(): から要素の範囲を削除します。指定されたインデックスから始まる配列。例:
someArray.splice(someArray.findIndex(el => el.name === "John"), 1);
ログイン後にコピー
  • Array.pop(): 配列から最後の要素を削除します。
  • Array.shift (): から最初の要素を削除します。 array.
  • Array.length = newLength: 余分な要素を切り捨てて、配列の長さを再割り当てします。

最適な方法の選択

配列からオブジェクトを削除するための最適な方法は、ユーザーの仕様によって異なります。ニーズ:

  • 非変異メソッド は新しい配列を作成しますが、元の配列には影響しません。これは、元の配列をそのまま保持したい場合に最適です。
  • 変更メソッド は、元の配列を直接変更します。これはより効率的ですが、望ましくない変更につながる可能性があります。

追加メモ

  • Array.findIndex(): を使用します。 splice() と Pop() にはインデックスが必要なので、削除するオブジェクトのインデックスを見つけるためにこれを使用します。パラメータ.
  • Array.filter(): フィルタ関数で複数の基準を指定することで、複数の要素を一度に削除するために使用できます。

次のコードは、filter() メソッドを使用して、名前を含むオブジェクトを含まない新しい配列を作成します。 "クリスチャン":

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

const noKristian = someArray.filter(el => el.name !== "Kristian");

console.log(noKristian);
// Output: [{name: "John", lines: "1,19,26,96"}]
ログイン後にコピー

以上がJavaScript 配列からオブジェクトを効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート