JavaScript-objekt är en kraftfull datastruktur som kombinerar nycklar och värden . Ibland måste vi ta bort ett specifikt nyckel-värde från ett objekt. Det kan göras med hjälp av metoderna nedan.

Hur tar man bort ett nyckel-värde från JavaScript-objekt?
Det finns flera metoder som kan användas för att ta bort en nyckel från ett JavaScript-objekt:
Innehållsförteckning
- Använda metoderna reduce() och filter().
- Använda delete-operatorn
- Destrukturering med vilooperatören
- Använda Object.assign()
- Använda Object.fromEntries() och Object.entries()
- Använder _.omit-metoden för Underscore.js-biblioteket
- UseCase of Ta bort en nyckel från JavaScript-objekt
1. Använd metoderna reduce() och filter().
De minska() och den filtrera() JavaScript-metoder kan tillsammans användas för att ta bort en nyckel från ett JavaScript-objekt.
Syntax för metoden reduce() och filter():
Object.keys(object_name).filter(()=>{}).reduce(()=>{});>Exempel:
Kodexemplet nedan implementerar filtret och reduceringsmetoderna tillsammans för att ta bort nyckel från ett objekt.
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] = details[key]; return newObj; }, {} ); console.log(detaljer);> Produktion
Original Object: { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Förklaring :
- Originalet
details>objektet innehåller egenskaper för namn, ålder och land. - De
Object.keys(details)>metod returnerar en array som innehåller nycklarna tilldetails>objekt. - De
.filter()>metoden filtrerar bort egenskapen ålder från arrayen av nycklar. - De
.reduce()>metod skapar ett nytt objekt (newObj>) genom att iterera över de filtrerade nycklarna och tilldela dem till det nya objektet. - Slutligen tilldelas det nya objektet utan egenskapen ålder tillbaka till
details>variabel, och den loggas till konsolen.
2. Använda raderingsoperatorn
De ta bort operatör i JavaScript kan användas för att ta bort en egenskap (nyckel-värdepar) från ett objekt.
Syntax för delete-operator:
delete objectName.propertyName;>
Exempel:
Koden nedan tar bort 'ålder'-nyckeln från objektet och lämnar bara 'namn' och 'land'-nycklarna i objektet.
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);> Produktion
Original Object: { name: 'Alex', age: 30, country: 'Canada' } Object after deleting age key: { name: 'Alex', country: 'Canada' }> Förklaring :
- Originalet
details>objektet innehåller egenskaper för namn, ålder och land. - De
delete>operatorn används för att ta bort egendomen ålder fråndetails>objekt. - Efter att ha tagit bort egenskapen ålder, ändras
details>objekt loggas till konsolen.
3. Destrukturering med vilooperatören
Destrukturering ett objekt som använder rest-operatorn skapar ett nytt objekt utan en specificerad egenskap, och behåller de återstående egenskaperna från det ursprungliga objektet.
Syntax för att förstöra med vilooperatör:
const { propertyToRemove, ...rest } = objectName;>Exempel:
Koden nedan använder destruktureringssyntaxen för att ta bort nycklar från ett objekt i 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);> Produktion
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Förklaring :
klass vs objekt java
- Originalet
details>objektet innehåller egenskaper för namn, ålder och land. - Destruktureringsuppdraget
{ age, ...rest } = details;>utvinner åldersegenskapen fråndetails>objekt och tilldelar det tillage>variabel. Resten av egenskaperna samlas in i ett nytt objekt som kallasrest>. - Som ett resultat av detta
rest>objektet innehåller alla egenskaper hos originaletdetails>objekt utom åldersegendomen. - De
rest>objekt loggas sedan till konsolen och visar objektet utan egenskapen ålder.
4. Använda Object.assign()
Använder sig av Object.assign() låter dig skapa ett nytt objekt utan en specificerad egenskap genom att kopiera alla egenskaper utom den du vill ta bort.
Syntax för object.assign():
const { age, ...rest } = Object.assign({}, details);>Exempel:
Koden nedan implementerar metoden Object.assign() för att ta bort egenskap från ett objekt.
Javascript const details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('orignal object', details) const { age, ...rest } = Object.assign({}, details); console.log(rest);> Produktion
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Förklaring :
- De
Object.assign({}, details)>metoden skapar en ytlig kopia avdetails>objekt. Detta förhindrar modifiering av originaletdetails>objekt. - Sedan används objektdestrukturering för att extrahera åldersegenskapen från det kopierade objektet och tilldela det till
age>variabel. Resten av egenskaperna samlas in i ett nytt objekt som kallasrest>. - Som ett resultat av detta
rest>objektet innehåller alla egenskaper hos originaletdetails>objekt utom åldersegendomen. - De
rest>objekt loggas sedan till konsolen och visar objektet utan egenskapen ålder.
5. Använda Object.fromEntries() och Object.entries()
De Object.entries() kommer att användas för att konvertera objektet till en array av nyckel-värdepar. Sedan använder vi Array.filter() för att utesluta nyckel-värdeparet med den angivna nyckeln. Slutligen använder vi Object.fromEntries() för att konvertera den filtrerade arrayen tillbaka till ett objekt.
Exempel:
Koden nedan implementerar ovanstående metoder för att ta bort nyckel från ett objekt i JavaScript.
Javascript const details = { name: 'Alex', age: 30, country: 'Canada' }; const { age, ...rest } = Object.fromEntries( Object.entries(details).filter(([key]) =>nyckel !== 'ålder')); console.log(rest);> Produktion
{ name: 'Alex', country: 'Canada' }> Förklaring:
Object.entries(details)>konverterardetails>objekt till en uppsättning nyckel-värdepar..filter(([key]) =>nyckel !== 'ålder')>filtrerar bort nyckel-värdepar där nyckeln inte är lika med 'ålder', vilket effektivt tar bort egenskapen ålder.Object.fromEntries()>konverterar den filtrerade matrisen av nyckel-värdepar tillbaka till ett objekt.- Slutligen används objektdestrukturering för att extrahera åldersegenskapen från resultatet, som tilldelas till
age>variabel, medan resten av egenskaperna samlas in i ett nytt objekt som kallasrest>. - De
rest>objekt loggas sedan till konsolen och visar objektet utan egenskapen ålder.
6. Använd _.omit-metoden i Underscore.js-biblioteket för att ta bort en nyckel från objektet
De underscore.js är ett JavaScript-bibliotek som kan inkluderas i ett HTML-dokument genom dess CDN-länk och sedan får du använda dess inbyggda funktioner.
Syntax för _.omit-metoden för Underscore.js-biblioteket:
objName = _.omit(objName, 'ketToRemove');>
Exempel:
Koden nedan kommer att förklara användningen av _.utelämna() funktion för att ta bort en nyckel från JavaScript-objekt.
HTML Ta bort nyckel från JavaScript Object title> head>