Об’єкт JavaScript — це потужна структура даних, яка об’єднує ключі і значення . Іноді нам потрібно видалити певний ключ-значення з об’єкта. Це можна зробити за допомогою наведених нижче підходів.

Як видалити ключ-значення з об’єкта JavaScript?
Існує кілька методів, за допомогою яких можна видалити ключ з об’єкта JavaScript:
Зміст
log4j
- Використання методів reduce() і filter().
- Використання оператора видалення
- Деструктуризація з оператором Rest
- Використання Object.assign()
- Використання Object.fromEntries() і Object.entries()
- Використання методу _.omit бібліотеки Underscore.js
- Випадок використання Видалити ключ з об’єкта JavaScript
1. Використання методів reduce() і filter().
The зменшити() і фільтр() методи JavaScript можна разом використовувати для видалення ключа з об’єкта JavaScript.
Синтаксис методів reduce() і filter():
Object.keys(object_name).filter(()=>{}).reduce(()=>{});>приклад:
Наведений нижче приклад коду реалізує методи фільтра та зменшення разом для видалення ключа з об’єкта.
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(подробиці);> Вихід
Original Object: { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Пояснення :
- Оригінальний
details>містить властивості для імені, віку та країни. - The
Object.keys(details)>метод повертає масив, що містить ключіdetails>об'єкт. - The
.filter()>метод фільтрує властивість віку з масиву ключів. - The
.reduce()>метод створює новий об'єкт (newObj>), перебираючи відфільтровані ключі та призначаючи їх новому об’єкту. - Нарешті, новий об’єкт без властивості віку призначається назад до
details>змінна, і вона реєструється на консолі.
2. Використання оператора видалення
The оператор видалення у JavaScript можна використовувати для видалення властивості (пари ключ-значення) з об’єкта.
Синтаксис оператора видалення:
delete objectName.propertyName;>
приклад:
Наведений нижче код видаляє ключ «age» з об’єкта, залишаючи в об’єкті лише ключі «name» та «country».
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);> Вихід
Original Object: { name: 'Alex', age: 30, country: 'Canada' } Object after deleting age key: { name: 'Alex', country: 'Canada' }> Пояснення :
- Оригінальний
details>містить властивості для імені, віку та країни. - The
delete>оператор використовується для видалення властивості age зdetails>об'єкт. - Після видалення властивості age змінений
details>об'єкт зареєстровано на консолі.
3. Деструктуризація за допомогою оператора Rest
Деструктуризація об’єкт, який використовує оператор rest, створює новий об’єкт без зазначеної властивості, зберігаючи властивості, що залишилися від оригінального об’єкта.
Синтаксис для деструкції з оператором rest:
const { propertyToRemove, ...rest } = objectName;>приклад:
Наведений нижче код використовує синтаксис деструктуризації для видалення ключів з об’єкта в 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);> Вихід
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Пояснення :
- Оригінальний
details>містить властивості для імені, віку та країни. - Завдання деструктуризації
{ age, ...rest } = details;>виділяє властивість віку зdetails>і призначає його доage>змінна. Решта властивостей збираються в новий об’єкт під назвоюrest>. - В результаті,
rest>об'єкт містить усі властивості оригіналуdetails>об'єкт, за винятком властивості вік. - The
rest>потім об’єкт реєструється на консолі, показуючи об’єкт без властивості віку.
4. Використання Object.assign()
Використання Object.assign() дозволяє створити новий об’єкт без зазначеної властивості, скопіювавши всі властивості, окрім тієї, яку потрібно видалити.
Синтаксис object.assign():
const { age, ...rest } = Object.assign({}, details);>приклад:
Наведений нижче код реалізує метод Object.assign() для видалення властивості з об’єкта.
Javascript const details = { name: 'Alex', age: 30, country: 'Canada' }; console.log('orignal object', details) const { age, ...rest } = Object.assign({}, details); console.log(rest);> Вихід
orignal object { name: 'Alex', age: 30, country: 'Canada' } { name: 'Alex', country: 'Canada' }> Пояснення :
- The
Object.assign({}, details)>метод створює поверхневу копіюdetails>об'єкт. Це запобігає модифікації оригіналуdetails>об'єкт. - Потім використовується деструктуризація об’єкта, щоб отримати властивість віку зі скопійованого об’єкта та призначити його
age>змінна. Решта властивостей збираються в новий об’єкт під назвоюrest>. - В результаті,
rest>об'єкт містить усі властивості оригіналуdetails>об'єкт, за винятком властивості вік. - The
rest>потім об’єкт реєструється на консолі, показуючи об’єкт без властивості віку.
5. Використання Object.fromEntries() і Object.entries()
The Object.entries() використовуватиметься для перетворення об’єкта в масив пар ключ-значення. Потім використовуємо Array.filter() щоб виключити пару ключ-значення з указаним ключем. Нарешті, ми використовуємо Object.fromEntries(), щоб перетворити відфільтрований масив назад в об’єкт.
приклад:
Наведений нижче код реалізує описані вище методи видалення ключа з об’єкта в JavaScript.
Javascript const details = { name: 'Alex', age: 30, country: 'Canada' }; const { age, ...rest } = Object.fromEntries( Object.entries(details).filter(([key]) =>ключ !== 'вік')); console.log(rest);> Вихід
{ name: 'Alex', country: 'Canada' }> Пояснення:
Object.entries(details)>перетворюєdetails>об’єкт у масив пар ключ-значення..filter(([key]) =>ключ !== 'вік')>відфільтровує пари ключ-значення, де ключ не дорівнює «віку», фактично видаляючи властивість віку.Object.fromEntries()>перетворює відфільтрований масив пар ключ-значення назад в об’єкт.- Нарешті, деструктуризація об’єкта використовується для вилучення властивості віку з результату, який присвоюється
age>змінна, тоді як решта властивостей збираються в новий об’єкт під назвоюrest>. - The
rest>потім об’єкт реєструється на консолі, показуючи об’єкт без властивості віку.
6. Використання методу _.omit бібліотеки Underscore.js для видалення ключа з об’єкта
The underscore.js це бібліотека JavaScript, яку можна включити в HTML-документ через посилання CDN, а потім ви зможете використовувати її вбудовані функції.
Синтаксис методу _.omit бібліотеки Underscore.js:
objName = _.omit(objName, 'ketToRemove');>
приклад:
Наведений нижче код пояснює використання _.omit() функція видалення ключа з об’єкта JavaScript.
HTML Видалити ключ із об’єкта JavaScript title> head>