L'objecte JavaScript és una potent estructura de dades que combina claus i valors . De vegades, hem de suprimir un valor-clau específic d'un objecte. Es pot fer utilitzant els enfocaments que es detallen a continuació.

Com eliminar un valor-clau d'un objecte JavaScript?
Hi ha diversos mètodes que es poden utilitzar per eliminar una clau d'un objecte JavaScript:
Taula de contingut
- Utilitzant els mètodes reduce() i filter().
- Utilitzant l'operador delete
- Desestructuració amb l'operador Rest
- Utilitzant Object.assign()
- Utilitzant Object.fromEntries() i Object.entries()
- Utilitzant el mètode _.omit de la biblioteca Underscore.js
- Cas d'ús de Eliminar una clau de l'objecte JavaScript
1. Utilitzant els mètodes reduce() i filter().
El reduir () i la filtre () Els mètodes de JavaScript es poden utilitzar conjuntament per eliminar una clau d'un objecte JavaScript.
Sintaxi del mètode reduce() i filter():
Object.keys(object_name).filter(()=>{}).reduir(()=>{});>Exemple:
L'exemple de codi següent implementa el filtre i els mètodes de reducció junts per eliminar la clau d'un objecte.
Javascript let details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('Original Object: ', details); details = Object.keys(details).filter(objKey =>objKey !== 'edat').reduce((newObj, key) => { newObj[clau] = detalls[clau]; retorn nouObj; }, {} ); console.log(detalls);>>>
Sortida Original Object: { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Explicació :
mètode de subcadenes en java
- L'original
details>L'objecte conté propietats per al nom, l'edat i el país. - El
Object.keys(details)>El mètode retorna una matriu que conté les claus del fitxerdetails>objecte. - El
.filter()>El mètode filtra la propietat age de la matriu de claus. - El
.reduce()>mètode crea un objecte nou (newObj>) iterant sobre les tecles filtrades i assignant-les al nou objecte. - Finalment, el nou objecte sense la propietat age s'assigna de nou al
details>variable i es registra a la consola.
2. Utilitzant l'operador delete
El suprimir l'operador a JavaScript es pot utilitzar per eliminar una propietat (parell clau-valor) d'un objecte.
Sintaxi de l'operador suprimir:
El codi següent elimina la clau 'edat' de l'objecte, deixant només les claus 'nom' i 'país' a l'objecte.
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);> Sortida
Original Object: { name: 'Alex', age: 30, country: 'Canada' } Object after deleting age key: { name: 'Alex', country: 'Canada' }> Explicació :
- L'original
details>L'objecte conté propietats per al nom, l'edat i el país. - El
delete>L'operador s'utilitza per eliminar la propietat age de l'details>objecte. - Després d'eliminar la propietat d'edat, la modificada
details>L'objecte està registrat a la consola.
3. Desestructuració amb l'Operador Rest
Desestructuració un objecte que utilitza l'operador rest crea un objecte nou sense una propietat especificada, mantenint les propietats restants de l'objecte original.
arp-a comanda
Sintaxi per a la destrucció amb l'operador rest:
const { propertyToRemove, ...rest } = objectName;>Exemple:
El codi següent utilitza la sintaxi de desestructuració per eliminar les claus d'un objecte en 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);> Sortida
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Explicació :
- L'original
details>L'objecte conté propietats per al nom, l'edat i el país. - L'encàrrec de desestructuració
{ age, ...rest } = details;>extreu la propietat d'edat deldetails>objecte i l'assigna alage>variable. La resta de propietats es recullen en un objecte nou anomenatrest>. - Com a resultat, el
rest>L'objecte conté totes les propietats de l'originaldetails>objecte excepte la propietat d'edat. - El
rest>L'objecte es registra a la consola, mostrant l'objecte sense la propietat age.
4. Utilitzant Object.assign()
Utilitzant Object.assign() us permet crear un objecte nou sense una propietat especificada copiant totes les propietats excepte la que voleu eliminar.
Sintaxi de object.assign():
const { age, ...rest } = Object.assign({}, details);>Exemple:
El codi següent implementa el mètode Object.assign() per eliminar la propietat d'un objecte.
Javascript const details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('orignal object', details) const { age, ...rest } = Object.assign({}, details); console.log(rest);> Sortida
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Explicació :
- El
Object.assign({}, details)>El mètode crea una còpia superficial del fitxerdetails>objecte. Això evita la modificació de l'originaldetails>objecte. - Aleshores, la desestructuració d'objectes s'utilitza per extreure la propietat d'edat de l'objecte copiat i assignar-la a
age>variable. La resta de propietats es recullen en un objecte nou anomenatrest>. - Com a resultat, el
rest>L'objecte conté totes les propietats de l'originaldetails>objecte excepte la propietat d'edat. - El
rest>L'objecte es registra a la consola, mostrant l'objecte sense la propietat age.
5. Utilitzant Object.fromEntries() i Object.entries()
El Object.entrées() s'utilitzarà per convertir l'objecte en una matriu de parells clau-valor. Després, fem servir Array.filter() per excloure la parella clau-valor amb la clau especificada. Finalment, utilitzem Object.fromEntries() per tornar a convertir la matriu filtrada en un objecte.
js cadena multilínia
Exemple:
El codi següent implementa els mètodes anteriors per eliminar la clau d'un objecte en JavaScript.
Javascript const details = { name: 'Alex', age: 30, country: 'Canada' }; const { age, ...rest } = Object.fromEntries( Object.entries(details).filter(([key]) =>clau !== 'edat')); console.log(resta);>>>Sortida
{ name: 'Alex', country: 'Canada' }> Explicació:
Object.entries(details)>converteix eldetails>objecte en una matriu de parells clau-valor..filter(([key]) =>clau !== 'edat')>filtra els parells clau-valor on la clau no és igual a 'edat', eliminant efectivament la propietat d'edat.Object.fromEntries()>torna a convertir la matriu filtrada de parells clau-valor en un objecte.- Finalment, la desestructuració d'objectes s'utilitza per extreure la propietat d'edat del resultat, que s'assigna al
age>variable, mentre que la resta de propietats es recullen en un objecte nou anomenatrest>. - El
rest>L'objecte es registra a la consola, mostrant l'objecte sense la propietat age.
6. Utilitzant el mètode _.omit de la biblioteca Underscore.js per eliminar una clau de l'objecte
El underscore.js és una biblioteca de JavaScript que es pot incloure en un document HTML mitjançant el seu enllaç CDN i després se't permet utilitzar les seves funcions incorporades.
Sintaxi del mètode _.omit de la biblioteca Underscore.js:
Exemple:
El codi següent explicarà l'ús del _.ometre() funció per eliminar una clau de l'objecte JavaScript.
HTML Elimina la clau del títol de l'objecte JavaScript> cap>