logo

Как да премахнете ключ/свойство от обект в JavaScript

Въведение:

JavaScript обектите са съставени от свойства, които са просто ключ-стойност двойки. По същество свойствата се състоят от двойка ключове и стойности, които могат да представляват всеки тип обект. Дори функциите имат способността да функционират като стойност или ключ във всеки обект. Както и да е, в този раздел ще говорим за това как да изтриете ключове от Object JavaScript.

Свързаната стойност на ключ се изтрива автоматично, когато ключът бъде премахнат. Така че елиминирането на ключ води само до елиминиране на този атрибут. Вече има три начина в JavaScript за премахване на ключове от обекти. Нека да разгледаме набързо всеки един.

Ако е необходимо, свойствата в обектите на JavaScript могат да бъдат изтрити. Има три прости метода, които можем да използваме за бързо изтриване на всяко свойство на обект. Първата техника използва Изтрий оператор, конкретен оператор в JavaScript, използва вторият метод Деструктуриране на обект , а третият метод използва Reflect.deleteProperty() метод.

1. Премахнете свойство от JavaScript обект с помощта на оператора Delete:

Операторът за изтриване е специфичен оператор в JavaScript. Ако искаме да премахнем ключ от JavaScript на обект, използвайте оператор за изтриване . Операторът за изтриване прави точно това, което подсказва името му: той премахва предоставеното свойство от обекта. Въпреки това, първо трябва да получим достъп до собствеността, за да я изтрием. За достъп до свойството Object може да се използва или инструментът за достъп до свойството точка, или инструментът за достъп на свойството квадратни скоби.

Изтриване с метода на точката:

Синтаксис:

sql изберете като
 delete object.property; 

Пример:

възраст на кайли дженър
 let emp = { name: 'saswat', age: 26, designation: 'Software Engineer', } console.log(emp); 

изход:

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

Нека премахнем свойството възраст по начин, базиран на точки.

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

Изход:

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

Обяснение:

Можем да видим от изхода по-горе, че операторът за изтриване е бил ефективен при изтриването на обекта emp's възраст на имота (начин на точка) .

Изтрийте с метода с квадратни скоби:

Синтаксис:

 delete object['property']; 

Нека използваме квадратни скоби, за да изтрием свойството обозначение от същия обект emp.

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

Изход:

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

Обяснение:

arraylist.sort

Можем да видим от изхода по-горе, че операторът за изтриване е успял да изтрие обозначението на свойството на обекта emp (в квадратни скоби) .

2. Премахнете свойство от JavaScript обект с помощта на деструктуриране на обект:

Деструктуриране на обект може също да се използва за премахване на свойство от обект, но има уловка. Вместо да се променя оригиналният обект, се създава нов обект, който не включва изтритото свойство. По този начин оригиналният елемент се запазва (не се променя).

Синтаксис:

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

Пример:

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

Изход:

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

Обяснение:

В гореспоменатия пример премахнахме свойство от обект с помощта на обект деструктуриране . Когато използвахме деструктуриране на обект, за да премахнем модела на свойствата от оригиналния обектен лаптоп, получихме новия обект myLaptop без тази собственост. Още веднъж изходът показва, че оригиналният елемент е останал непроменен.

3. Премахнете свойство от JavaScript обект с помощта на метода Reflect.deleteProperty():

The Reflect.deleteProperty() се предоставя от един от вградените JavaScript обекти, наречен 'Отразяване' . Този подход е аналогичен на функционалната форма на оператора за изтриване, която обсъдихме.

Пример:

номерирайте азбуката
 const cars = { car1: 'Honda', car2: 'Tata', car3: 'Toyota' }; Reflect.deleteProperty(cars, 'car2'); console.log(cars); 

Изход:

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

Обяснение:

В примера по-горе имаше обект, наречен 'коли' който имаше три имота. За да премахнете кола 2 собственост от този обект, използвахме Reflect.deleteProperty() метод. Резултатът показва, че изтриването на свойството car2 от обекта cars е успешно.

И накрая, бихме искали да кажем, че няма значение дали използвате оператор за изтриване или Reflect.deleteProperty() метод, защото и двамата вършат работата с по същество еднаква времева сложност. Въпреки това, използвайки Разрушаване на обекти отнема повече време. Следователно, поради простия си синтаксис и ниската времева сложност, операторът за изтриване е най-популярният метод за премахване на ключове от javascript обекти.

Заключение

Обектите на JavaScript са съставени от свойства, които са просто двойки ключ-стойност. Свързаната стойност на ключ се изтрива автоматично, когато ключът бъде премахнат.