JavaScript オブジェクトは、以下を組み合わせた強力なデータ構造です。 キー そして 価値観 。場合によっては、オブジェクトから特定の Key-Value を削除する必要があります。これは、以下に示すアプローチを使用して実行できます。

JavaScript オブジェクトから Key-Value を削除するにはどうすればよいですか?
JavaScript オブジェクトからキーを削除するために使用できるメソッドがいくつかあります。
目次
- reduce() メソッドと filter() メソッドの使用
- 削除演算子の使用
- REST 演算子を使用した分解
- Object.assign() の使用
- Object.fromEntries() と Object.entries() の使用
- Underscore.jsライブラリの_.omitメソッドを使用する
- JavaScript オブジェクトからキーを削除するユースケース
1.reduce() メソッドと filter() メソッドの使用
の 減らす() そしてその フィルター() JavaScript のメソッドを組み合わせて使用すると、JavaScript オブジェクトからキーを削除できます。
reduce() メソッドと filter() メソッドの構文:
Object.keys(object_name).filter(()=>{}).reduce(()=>{});>>例:
CSSで画像を中央揃えにする
以下のコード例では、filter メソッドとreduce メソッドを一緒に実装して、オブジェクトからキーを削除します。
JavaScript let details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('Original Object: ', details); details = Object.keys(details).filter(objKey =>objKey !== 'age').reduce((newObj, key) => { newObj[key] = 詳細[key]; return newObj; }, {} ); console.log(詳細);>> 出力
Original Object: { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> 説明 :
- オリジナル
details>オブジェクトには、名前、年齢、国のプロパティが含まれています。 - の
Object.keys(details)>メソッドは、キーを含む配列を返します。details>物体。 - の
.filter()>メソッドは、キーの配列から age プロパティをフィルターで除外します。 - の
.reduce()>メソッドは新しいオブジェクトを作成します (newObj>) フィルタリングされたキーを反復処理し、それらを新しいオブジェクトに割り当てます。 - 最後に、age プロパティのない新しいオブジェクトが再び割り当てられます。
details>変数であり、コンソールに記録されます。
2. 削除演算子の使用
の 削除演算子 JavaScript では、オブジェクトからプロパティ (キーと値のペア) を削除するために使用できます。
削除演算子の構文:
delete objectName.propertyName;>
例:
以下のコードは、オブジェクトから「age」キーを削除し、「name」キーと「country」キーのみをオブジェクトに残します。
JavaScript const details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('Original Object:', details); delete details.age; console.log('Object after deleting age key:', details);> 出力
Original Object: { name: 'Alex', age: 30, country: 'Canada' } Object after deleting age key: { name: 'Alex', country: 'Canada' }> 説明 :
- オリジナル
details>オブジェクトには、名前、年齢、国のプロパティが含まれています。 - の
delete>演算子は、年齢プロパティを削除するために使用されます。details>物体。 - age プロパティを削除した後、変更された
details>オブジェクトがコンソールに記録されます。
3. REST 演算子を使用した分解
解体中 REST 演算子を使用するオブジェクトは、指定されたプロパティなしで新しいオブジェクトを作成し、元のオブジェクトの残りのプロパティを保持します。
REST 演算子を使用して破壊するための構文:
const { propertyToRemove, ...rest } = objectName;>例:
以下のコードは、構造化構文を使用して、JavaScript のオブジェクトからキーを削除します。
JavaScript const details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('orignal object', details) // after using destructuring and rest operator const { age, ...rest } = details; console.log(rest);> 出力
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> 説明 :
- オリジナル
details>オブジェクトには、名前、年齢、国のプロパティが含まれています。 - 構造化割り当て
{ age, ...rest } = details;>から age プロパティを抽出します。details>オブジェクトを作成し、それをage>変数。残りのプロパティは、という新しいオブジェクトに収集されます。rest>。 - その結果、
rest>オブジェクトには元のプロパティがすべて含まれていますdetails>age プロパティを除くオブジェクト。 - の
rest>その後、オブジェクトがコンソールに記録され、age プロパティのないオブジェクトが表示されます。
4. Object.assign() の使用
使用する Object.assign() 削除するプロパティを除くすべてのプロパティをコピーすることで、指定されたプロパティなしで新しいオブジェクトを作成できます。
object.assign() の構文:
const { age, ...rest } = Object.assign({}, details);>例:
以下のコードは、オブジェクトからプロパティを削除する Object.assign() メソッドを実装しています。
JavaScript const details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('orignal object', details) const { age, ...rest } = Object.assign({}, details); console.log(rest);> 出力
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> 説明 :
- の
Object.assign({}, details)>メソッドは、の浅いコピーを作成しますdetails>物体。これにより、オリジナルの改変が防止されますdetails>物体。 - 次に、オブジェクトの構造化を使用して、コピーされたオブジェクトから age プロパティを抽出し、それを
age>変数。残りのプロパティは、という新しいオブジェクトに収集されます。rest>。 - その結果、
rest>オブジェクトには元のプロパティがすべて含まれていますdetails>age プロパティを除くオブジェクト。 - の
rest>その後、オブジェクトがコンソールに記録され、age プロパティのないオブジェクトが表示されます。
5. Object.fromEntries() と Object.entries() の使用
の Object.entries() オブジェクトをキーと値のペアの配列に変換するために使用されます。次に、使用します Array.filter() 指定したキーを持つキーと値のペアを除外します。最後に、Object.fromEntries() を使用して、フィルター処理された配列をオブジェクトに変換します。
例:
以下のコードは、JavaScript のオブジェクトからキーを削除する上記のメソッドを実装しています。
JavaScript const details = { name: 'Alex', age: 30, country: 'Canada' }; const { age, ...rest } = Object.fromEntries( Object.entries(details).filter(([key]) =>キー !== '年齢'));コンソール.ログ(残り);>> 出力
{ name: 'Alex', country: 'Canada' }> 説明:
Object.entries(details)>を変換しますdetails>オブジェクトをキーと値のペアの配列に変換します。.filter(([key]) =>キー !== '年齢')>>キーが「年齢」と等しくないキーと値のペアをフィルターで除外し、実質的に年齢プロパティを削除します。Object.fromEntries()>フィルタリングされたキーと値のペアの配列をオブジェクトに変換します。- 最後に、オブジェクトの構造化を使用して結果から age プロパティを抽出し、これを
age>変数、残りのプロパティは という新しいオブジェクトに収集されます。rest>。 - の
rest>その後、オブジェクトがコンソールに記録され、age プロパティのないオブジェクトが表示されます。
6. Underscore.jsライブラリの_.omitメソッドを使用してオブジェクトからキーを削除する
の アンダースコア.js は、CDN リンクを通じて HTML ドキュメントに組み込むことができる JavaScript ライブラリであり、その組み込み関数を使用することができます。
Underscore.js ライブラリの _.omit メソッドの構文:
objName = _.omit(objName, 'ketToRemove');>
例:
以下のコードは、 _.省略() JavaScript オブジェクトからキーを削除する関数。
HTML JavaScript オブジェクトからキーを削除します。 title> head>