У JavaScript робота з об’єктами JSON (JavaScript Object Notation) є звичайною справою, і часто вам може знадобитися перевірити, чи існує в об’єкті певний ключ. Ця стаття розповість про різні способи ефективного вирішення цього завдання.
Об’єкти JSON, які характеризуються своїми парами ключ-значення, є універсальними структурами даних, які використовуються для зберігання та передачі даних. Однак визначення наявності певного ключа в таких об’єктах має вирішальне значення для виконання умовних операцій або доступу до вкладених даних.
Нижче наведено методи перевірки наявності ключа в об’єкті JSON:
Зміст
- Метод JavaScript hasOwnProperty().
- Використання в Операторі
- Використання методу Reflect.ownKeys() і include().
- Використання методу Object.getOwnPropertySymbols() і include().
- Використання методу Object.getOwnPropertyNames() і include().
- Використання методу Object.keys() і include().
1. Метод JavaScript hasOwnProperty().
Метод JavaScript hasOwnProperty(). повертає логічне значення, яке вказує, чи має об’єкт визначену властивість як власну властивість (на відміну від її успадкування).
Синтаксис:
obj.hasOwnProperty(prop);>
Параметри:
- опора: Цей параметр обов'язковий. Він визначає назву рядка або символ властивості, яку потрібно перевірити.
Повернене значення:
Він повертає логічне значення, яке вказує, чи має об’єкт задану властивість як власну властивість.
анотації для пружинного завантаження
Приклад 1: Цей приклад перевіряє наявність prop_1 з об'єкт з допомогою властивість hasOwnProperty .
Javascript let obj = { prop_1: 'val_1', prop_2: 'val_2', prop_3: 'val_3', prop_4: 'val_4', }; function gfg_Run() { ans = ''; let prop = 'prop_1'; if (obj.hasOwnProperty(prop)) { ans = 'let 'obj' has ' + prop + ' property'; } else { ans = 'let 'obj' has not ' + prop + ' property'; } console.log(ans); } gfg_Run()> Вихід
let 'obj' has prop_1 property>
приклад 2: Цей приклад перевіряє наявність pro_1 з об'єкт шляхом простого доступу до масиву.
Javascript let obj = { prop_1: 'val_1', prop_2: 'val_2', prop_3: 'val_3', prop_4: 'val_4', }; function gfg_Run() { ans = ''; let prop = 'pro_1'; if (obj[prop]) { ans = 'let 'obj' has ' + prop + ' property'; } else { ans = 'let 'obj' has not ' + prop + ' property'; } console.log(ans); } gfg_Run()> Вихід
let 'obj' has not pro_1 property>
Використанняin>Оператор
JavaScript in>Оператор це вбудований оператор, який використовується для перевірки наявності в об’єкті певної властивості чи ні. Він повертає логічне значення правда якщо вказана властивість є в об’єкті, інакше вона повертає помилковий .
Синтаксис:
prop in object>
Параметри:
- опора : Цей параметр містить рядок або символ, який представляє назву властивості або індекс масиву.
- об'єкт: Цей параметр є об’єктом, який потрібно перевірити, чи містить він опора
Повернене значення:
Цей метод повертає логічне значення. Значення правда повертається якщо вказана властивість є знайдено в об’єкті, інакше він повертає false.
приклад: У цьому прикладі ми використовуємоin>Оператор.
// Example JSON object let jsonObject = { name: 'John', age: 25, city: 'New York' }; // Check if 'age' key exists in jsonObject if ('age' in jsonObject) { console.log('The key 'age' exists in the JSON object.'); } else { console.log('The key 'age' does not exist in the JSON object.'); }> Вихід
The key 'age' exists in the JSON object.>
ВикористанняReflect.ownKeys()>іincludes()>метод
JaScript Reflect.ownKeys()> Метод у Javascript використовується для повернення масиву власних ключів властивостей цільового об’єкта та ігнорує успадковані властивості.
Синтаксис:
Reflect.ownKeys( obj );>
Параметри:
- Ціль: Цей параметр містить цільовий об’єкт і використовується для отримання власних ключів.
Повернене значення:
- Цей метод завжди повертає масив ключів властивостей цільового об’єкта.
приклад: У цьому прикладі ми використовуємо Reflect.ownKeys()> іincludes()>метод.
const jsonObject = { key1: 'value1', key2: 'value2', key3: 'value3' }; const keyToCheck = 'key2'; if (Reflect.ownKeys(jsonObject).includes(keyToCheck)) { console.log(`${keyToCheck} exists in the JSON object.`); } else { console.log(`${keyToCheck} does not exist in the JSON object.`); }> Вихід
key2 exists in the JSON object.>
Використання Object.getOwnPropertySymbols()> і includes()> метод
The Object.getOwnPropertySymbols()> метод у JavaScript — це стандартний вбудований об’єкт, який повертає масив усіх властивостей символів, присутніх у даному об’єкті. Порожній масив повертається, доки властивості символу не будуть встановлені для об’єкта.
Синтаксис:
Object.getOwnPropertySymbols(obj);>
Параметри:
- об'єкт: Цей параметр є об’єктом, властивості символу якого мають бути повернуті.
Повернене значення:
- Цей метод повертає масив усіх властивостей символу, які відповідають властивостям, знайденим безпосередньо в заданому об’єкті.
приклад: У цьому прикладі ми є u співати Object.getOwnPropertySymbols()> і includes()> метод
const jsonObject = { [Symbol('key1')]: 'value1', [Symbol('key2')]: 'value2', [Symbol('key3')]: 'value3' }; const keyToCheck = Symbol('key2'); if (Object.getOwnPropertySymbols(jsonObject).includes(keyToCheck)) { console.log(`${keyToCheck.toString()} exists in the JSON object.`); } else { console.log(`${keyToCheck.toString()} does not exist in the JSON object.`); }> Вихід
Symbol(key2) does not exist in the JSON object.>
Використання Object.getOwnPropertyNames()> і includes()> метод
The Object.getOwnPropertyNames()> метод у JavaScript — це стандартний вбудований об’єкт, який повертає всі властивості, наявні в даному об’єкті, за винятком властивостей, що не перераховуються на основі символів.
Синтаксис:
Object.getOwnPropertyNames(obj);>
Параметри:
Цей метод приймає один параметр, як зазначено вище та описано нижче:
- об'єкт: Цей параметр містить об’єкт, перелічувані та неперелічувані властивості якого мають бути повернуті.
Повернене значення:
- Цей метод повертає масив рядків, який відповідає властивостям, знайденим безпосередньо в заданому об’єкті.
приклад: У цьому прикладі ми використовуємо метод Object.getOwnPropertyNames() і include().
Javascript const jsonObject = { key1: 'value1', key2: 'value2', key3: 'value3' }; const keyToCheck = 'key2'; if (Object.getOwnPropertyNames(jsonObject).includes(keyToCheck)) { console.log(`${keyToCheck} exists in the JSON object.`); } else { console.log(`${keyToCheck} does not exist in the JSON object.`); }> Вихід
key2 exists in the JSON object.>
Використання Object.keys()> і includes()> метод
The Object.keys()> метод у JavaScript використовується для отримання масиву перелічуваних імен властивостей об’єкта. Він повертає масив, що містить ключі об’єкта.
Синтаксис:
Object.keys(obj);>
Параметр:
- об'єкт : це об’єкт, перелічувані властивості якого мають бути повернуті.
Повернене значення:
- Він повертає масив рядків, які представляють усі перелічувані властивості заданого об’єкта.
приклад: У цьому прикладі ми використовуємо метод Object.keys() і includes().
Javascript const jsonObject = { key1: 'value1', key2: 'value2', key3: 'value3' }; const keyToCheck = 'key2'; if (Object.keys(jsonObject).includes(keyToCheck)) { console.log(`${keyToCheck} exists in the JSON object.`); } else { console.log(`${keyToCheck} does not exist in the JSON object.`); }> Вихід
key2 exists in the JSON object.>