logo

Sådan fjerner du en nøgle/egenskab fra et objekt i JavaScript

Introduktion:

JavaScript-objekter er opbygget af egenskaber, som er retfærdige nøgleværdi par. I bund og grund består egenskaber af et par nøgler og værdier, der kan repræsentere enhver type enhed. Selv funktioner har evnen til at fungere som en værdi eller en nøgle i ethvert objekt. I hvert fald, i dette afsnit vil vi tale om, hvordan man sletter nøgler fra Object JavaScript.

En nøgles tilknyttede værdi slettes automatisk, når nøglen fjernes. Så eliminering af en nøgle indebærer blot at fjerne denne egenskab. Der er nu tre måder i JavaScript til at fjerne nøgler fra objekter. Lad os tage et hurtigt kig på hver enkelt.

Om nødvendigt kan egenskaber i JavaScript-objekter slettes. Der er tre enkle metoder, vi kan bruge til hurtigt at slette enhver objektegenskab. Den første teknik gør brug af slette operator, en bestemt operator i JavaScript, gør den anden metode brug af Objektdestrukturering , og den tredje metode gør brug af Reflect.deleteProperty() metode.

1. Fjern en ejendom fra et JavaScript-objekt ved hjælp af Slet-operatoren:

Slet-operatoren er en specifik operator i JavaScript. Hvis vi ønsker at fjerne en nøgle fra et objekt-JavaScript, skal du bruge slet operatør . Slet-operatoren gør præcis, hvad dens navn antyder: den fjerner den leverede egenskab fra objektet. Selvom vi først skal få adgang til ejendommen for at slette den. Enten prik-egenskabs-accessor eller firkantede parentes-egenskabs-accessor kan bruges til at få adgang til Object-egenskaben.

Slet med prikmetoden:

Syntaks:

brug af internet
 delete object.property; 

Eksempel:

aftensmad vs middagstid
 let emp = { name: 'saswat', age: 26, designation: 'Software Engineer', } console.log(emp); 

produktion:

 { name: 'saswat', age: 26, designation: 'Software Engineer' } age: 26 designation: 'Software Engineer' name: 'saswat' 

Lad os fjerne aldersegenskaben på en prikbaseret måde.

 delete emp.age; console.log(emp); 

Produktion:

 { name: 'saswat', designation: 'Software Engineer' } designation: 'Software Engineer' name: 'saswat' 

Forklaring:

Vi kan se fra outputtet ovenfor, at delete-operatoren var effektiv til at slette objektet emp's ejendomsalderen (prik måde) .

Slet med den firkantede parentes metode:

Syntaks:

 delete object['property']; 

Lad os bruge firkantede parenteser til at slette egenskaben betegnelse fra det samme objekt emp.

 let emp = { name: 'saswat', age: 26, designation: 'Software Engineer', } delete emp['designation']; console.log(emp); 

Produktion:

 { name: 'saswat', age: 26 } name: 'saswat' age: 26 

Forklaring:

gimp rektangel tegning

Vi kan se fra outputtet ovenfor, at delete-operatoren havde succes med at slette objektet emp's egenskabsbetegnelse (måde med firkantede parenteser) .

2. Fjern en egenskab fra et JavaScript-objekt ved hjælp af objektdestrukturering:

Objekt destrukturering kan også bruges til at fjerne en egenskab fra et objekt, men der er en hak. I stedet for at ændre det originale objekt, oprettes et nyt objekt, der ikke indeholder den slettede egenskab. På denne måde bevares det originale element (ændres ikke).

Syntaks:

 const{ propertyToRemove, ...newObject } = OriginalObject; 

Eksempel:

sammenligne strenge java
 const laptop = { brand: 'HP', model: 'Notebook', year: 2020, } const {model, ...newLaptop} = laptop; console.log(newLaptop); console.log(laptop); 

Produktion:

 { brand: 'HP', year: 2020 } { brand: 'HP', model: 'Notebook', year: 2020 } 

Forklaring:

I det førnævnte eksempel fjernede vi en egenskab fra et objekt ved hjælp af objekt destrukturering . Da vi brugte objektdestrukturering til at fjerne egenskabsmodellen fra den originale objektbærbare, fik vi det nye objekt min bærbare computer uden den ejendom. Endnu en gang viser outputtet, at den oprindelige vare forblev uændret.

3. Fjern en egenskab fra et JavaScript-objekt ved hjælp af Reflect.deleteProperty()-metoden:

Det Reflect.deleteProperty() metode leveres af et af de indbyggede JavaScript-objekter kaldet 'Afspejle' . Denne tilgang er analog med sletoperatorens funktionsform, som vi har diskuteret.

Eksempel:

logo java
 const cars = { car1: 'Honda', car2: 'Tata', car3: 'Toyota' }; Reflect.deleteProperty(cars, 'car2'); console.log(cars); 

Produktion:

 { car1: 'Honda', car3: 'Toyota' } 

Forklaring:

I eksemplet ovenfor var der et objekt kaldet 'biler' der havde tre egenskaber. For at fjerne bil 2 ejendom fra det objekt, vi brugte Reflect.deleteProperty() metode. Outputtet viser, at sletningen af ​​car2-egenskaben fra cars-objektet lykkedes.

Til sidst vil vi gerne sige, at det ikke gør nogen forskel, om du bruger slet operatør eller den Reflect.deleteProperty() metode, fordi de begge udfører arbejdet med stort set samme tidsmæssige kompleksitet. Dog udnytter Objekt ødelæggende tager mere tid. Derfor er delete-operatoren på grund af dens enkle syntaks og lave tidskompleksitet den mest populære metode til at fjerne nøgler fra JavaScript-objekter.

Konklusion

JavaScript-objekter er opbygget af egenskaber, som kun er nøgleværdi-par. En nøgles tilknyttede værdi slettes automatisk, når nøglen fjernes.