配列オブジェクトのプロパティを効率的に削除する
従来のループを使用して配列内のオブジェクトから特定のプロパティを削除するのは面倒な場合があります。このプロセスを合理化するために、ES6 の構造化に基づいたより効率的なアプローチを検討してみましょう。
オリジナルの For ループ アプローチ
従来の方法では、for ループを使用してそれぞれを反復処理します。オブジェクトを削除し、問題のプロパティを手動で削除します:
var array = [{"bad": "something", "good":"something"},{"bad":"something", "good":"something"},...]; for (var i = 0, len = array.length; i < len; i++) { delete array[i].bad; }
このメソッドは機能しますが、冗長であり、次のような問題が発生する傾向があります。エラー。
ES6 救済のための分解
ES6 では、オブジェクトを分解し、必要なプロパティのみを選択的に保持する便利な方法が導入されています。スプレッド演算子 (「...」) を使用すると、削除するプロパティを除くすべてのプロパティを抽出できます。
const newArray = array.map(({dropAttr1, dropAttr2, ...keepAttrs}) => keepAttrs)
この場合、newArray という新しい配列を作成します。 map() 関数は元の配列を反復処理し、オブジェクトごとに、dropAttr1 と DropAttr2 を除くすべてのプロパティを持つ新しいオブジェクトに構造を分解します。残りのプロパティは keepAttrs オブジェクトに収集されます。
ループの代わりに構造化に依存することで、コードが簡素化され、可読性が向上し、プロパティ削除の一貫性が確保されます。
以上がES6 の構造化を使用して配列オブジェクトのプロパティを効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。