Jak usunąć parę klucz-wartość z obiektu JavaScript?
Obiekt JavaScript to potężna struktura danych, która łączy Klucze I wartości . Czasami musimy usunąć konkretną parę klucz-wartość z obiektu. Można tego dokonać, stosując metody podane poniżej.
Jak usunąć parę klucz-wartość z obiektu JavaScript?
Istnieje kilka metod usunięcia klucza z obiektu JavaScript:
Spis treści
- Korzystanie z metod redukcji() i filter().
- Korzystanie z operatora usuwania
- Destrukturyzacja za pomocą operatora rest
- Korzystanie z metody Object. przypisania()
- Korzystanie z obiektów Object.fromEntries() i Object.entries()
- Użycie metody _.omit biblioteki Underscore.js
- Przypadek użycia Usuń klucz z obiektu JavaScript
1. Korzystanie z metod redukcji() i filter().
The zmniejszyć() i filtr() Metody JavaScript mogą być razem użyte do usunięcia klucza z obiektu JavaScript.
Składnia metod redukcji() i filter():
Object.keys(object_name).filter(()=>{}).reduce(()=>{}); Przykład:
Poniższy przykład kodu implementuje razem metody filter i redukujące w celu usunięcia klucza z obiektu.
JavaScript let details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('Original Object: ', details); details = Object.keys(details).filter(objKey =>objKey !== 'wiek').reduce((nowyObj, klucz) => { nowyObj[klucz] = szczegóły[klucz]; return nowyObj; }, {} ); konsola.log(szczegóły); Wyjście
Original Object: { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' } Wyjaśnienie :
- Oryginalny
details>obiekt zawiera właściwości imienia, wieku i kraju. - The
Object.keys(details)>Metoda zwraca tablicę zawierającą klucze metodydetails>obiekt. - The
.filter()>Metoda odfiltrowuje właściwość age z tablicy kluczy. - The
.reduce()>metoda tworzy nowy obiekt (newObj>) poprzez iterację po przefiltrowanych kluczach i przypisanie ich do nowego obiektu. - Na koniec nowy obiekt bez właściwości age jest przypisywany z powrotem do
details>zmienną i jest ona rejestrowana w konsoli.
2. Użycie operatora usuwania
The usuń operatora w JavaScript może służyć do usuwania właściwości (pary klucz-wartość) z obiektu.
Składnia operatora usuwania:
delete objectName.propertyName;
Przykład:
Poniższy kod usuwa klucz „wiek” z obiektu, pozostawiając w obiekcie jedynie klucze „nazwa” i „kraj”.
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); Wyjście
Original Object: { name: 'Alex', age: 30, country: 'Canada' } Object after deleting age key: { name: 'Alex', country: 'Canada' } Wyjaśnienie :
- Oryginalny
details>obiekt zawiera właściwości imienia, wieku i kraju. - The
delete>Operator służy do usuwania właściwości age zdetails>obiekt. - Po usunięciu właściwości age zmodyfikowano
details>obiekt jest rejestrowany w konsoli.
3. Destrukturyzacja za pomocą operatora rest
Destrukturyzacja obiekt za pomocą operatora rest tworzy nowy obiekt bez określonej właściwości, zachowując pozostałe właściwości oryginalnego obiektu.
Składnia destrukcji za pomocą operatora rest:
const { propertyToRemove, ...rest } = objectName; Przykład:
Poniższy kod wykorzystuje składnię destrukturyzującą do usuwania kluczy z obiektu w 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); Wyjście
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' } Wyjaśnienie :
- Oryginalny
details>obiekt zawiera właściwości imienia, wieku i kraju. - Zadanie destrukturyzujące
{ age, ...rest } = details;>wyodrębnia właściwość age z plikudetails>obiekt i przypisuje go doage>zmienny. Pozostałe właściwości są gromadzone w nowym obiekcie o nazwierest>. - W rezultacie
rest>obiekt zawiera wszystkie właściwości oryginałudetails>obiekt z wyjątkiem właściwości age. - The
rest>obiekt jest następnie logowany do konsoli, pokazując obiekt bez właściwości age.
4. Korzystanie z obiektu. przypisania()
Za pomocą Obiekt.przypisz() umożliwia utworzenie nowego obiektu bez określonej właściwości poprzez skopiowanie wszystkich właściwości z wyjątkiem tej, którą chcesz usunąć.
Składnia obiektu.przypisać():
const { age, ...rest } = Object.assign({}, details); Przykład:
Poniższy kod implementuje metodę Object. przypis() w celu usunięcia właściwości z obiektu.
JavaScript const details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('orignal object', details) const { age, ...rest } = Object.assign({}, details); console.log(rest); Wyjście
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' } Wyjaśnienie :
- The
Object.assign({}, details)>Metoda tworzy płytką kopię plikudetails>obiekt. Zapobiega to modyfikacji oryginałudetails>obiekt. - Następnie stosuje się destrukturyzację obiektu w celu wyodrębnienia właściwości age ze skopiowanego obiektu i przypisania jej do obiektu
age>zmienny. Pozostałe właściwości są gromadzone w nowym obiekcie o nazwierest>. - W rezultacie
rest>obiekt zawiera wszystkie właściwości oryginałudetails>obiekt z wyjątkiem właściwości age. - The
rest>obiekt jest następnie logowany do konsoli, pokazując obiekt bez właściwości age.
5. Korzystanie z obiektów Object.fromEntries() i Object.entries()
The Obiekt.wpisy() zostanie użyty do przekształcenia obiektu w tablicę par klucz-wartość. Następnie używamy Tablica.filter() aby wykluczyć parę klucz-wartość z określonym kluczem. Na koniec używamy Object.fromEntries() do przekształcenia przefiltrowanej tablicy z powrotem w obiekt.
Przykład:
Poniższy kod implementuje powyższe metody usuwania klucza z obiektu w JavaScript.
JavaScript const details = { name: 'Alex', age: 30, country: 'Canada' }; const { age, ...rest } = Object.fromEntries( Object.entries(details).filter(([key]) =>klucz !== 'wiek')); konsola.log(reszta); Wyjście
{ name: 'Alex', country: 'Canada' } Wyjaśnienie:
-
Object.entries(details)>konwertujedetails>obiekt na tablicę par klucz-wartość. -
.filter(([key]) =>klucz !== 'wiek')>odfiltrowuje pary klucz-wartość, w których klucz nie jest równy „wiek”, skutecznie usuwając właściwość wiek. -
Object.fromEntries()>konwertuje przefiltrowaną tablicę par klucz-wartość z powrotem na obiekt. - Na koniec stosuje się destrukturyzację obiektu w celu wyodrębnienia z wyniku właściwości age, która jest przypisana do
age>zmienną, podczas gdy pozostałe właściwości są gromadzone w nowym obiekcie o nazwierest>. - The
rest>obiekt jest następnie logowany do konsoli, pokazując obiekt bez właściwości age.
6. Wykorzystanie metody _.omit biblioteki Underscore.js do usunięcia klucza z obiektu
The podkreślenie.js to biblioteka JavaScript, którą można włączyć do dokumentu HTML za pośrednictwem łącza CDN, a następnie można korzystać z jej wbudowanych funkcji.
Składnia metody _.omit biblioteki Underscore.js:
objName = _.omit(objName, 'ketToRemove');
Przykład:
Poniższy kod wyjaśni użycie metody _.pomijać() funkcja usuwająca klucz z obiektu JavaScript.
HTML Usuń klucz z JavaScript Obiekt title>head>