JavaScript Pārbaudiet, vai JSON objektā pastāv atslēga
Programmā JavaScript darbs ar JSON (JavaScript Object Notation) objektiem ir izplatīts, un bieži vien jums var būt nepieciešams pārbaudīt, vai objektā pastāv noteikta atslēga. Šajā rakstā ir aprakstītas dažādas metodes, kā efektīvi veikt šo uzdevumu.
JSON objekti, ko raksturo to atslēgu un vērtību pāri, ir daudzpusīgas datu struktūras, ko izmanto datu glabāšanai un pārsūtīšanai. Tomēr noteiktas atslēgas klātbūtnes noteikšana šādos objektos ir ļoti svarīga, lai veiktu nosacītas darbības vai piekļūtu ligzdotiem datiem.
Tālāk ir norādītas metodes, kā pārbaudīt, vai JSON objektā ir atslēga.
Satura rādītājs
- JavaScript hasOwnProperty() metode
- Izmantošana operatorā
- Izmantojot Reflect.ownKeys() and include() metodi
- Izmantojot Object.getOwnPropertySymbols() and include() metodi
- Izmantojot metodi Object.getOwnPropertyNames() and include().
- Izmantojot Object.keys() un include() metodi
1. JavaScript hasOwnProperty() metode
JavaScript hasOwnProperty() metode atgriež Būla vērtību, kas norāda, vai objektam definētais rekvizīts ir kā savs īpašums (pretstatā mantojumam).
Sintakse:
obj.hasOwnProperty(prop);
Parametri:
- rekvizīts: Šis parametrs ir nepieciešams. Tas norāda pārbaudāmā īpašuma virknes nosaukumu vai simbolu.
Atgriešanas vērtība:
Tas atgriež Būla vērtību, norādot, vai objektam dotais īpašums ir kā savs īpašums.
1. piemērs: Šis piemērs pārbauda prop_1 no obj izmantojot hasOwnProperty īpašums .
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() Izvade
let 'obj' has prop_1 property
2. piemērs: Šis piemērs pārbauda pro_1 no obj izmantojot vienkāršu masīva piekļuvi.
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() Izvade
let 'obj' has not pro_1 property
Izmantojot in> Operators
JavaScript in> Operators ir iebūvēts operators, ko izmanto, lai pārbaudītu, vai objektā pastāv konkrēts īpašums. Tas atgriež Būla vērtību taisnība ja norādītais īpašums atrodas objektā, pretējā gadījumā tas atgriežas viltus .
Sintakse:
prop in object
Parametri:
- prop : Šis parametrs satur virkni vai simbolu, kas apzīmē rekvizīta nosaukumu vai masīva indeksu.
- objekts: Šis parametrs ir objekts, kas ir jāpārbauda, vai tas satur prop.
Atgriešanas vērtība:
Šī metode atgriež Būla vērtību. Vērtība taisnība tiek atgriezta ja norādītais īpašums ir atrasts objektā, pretējā gadījumā tas atgriež false.
Piemērs: Šajā piemērā mēs izmantojam in> Operators.
// 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.'); } Izvade
The key 'age' exists in the JSON object.
Izmantojot Reflect.ownKeys()> un includes()> metodi
JaScript Reflect.ownKeys()> Javascript metode tiek izmantota, lai atgrieztu mērķa objekta rekvizītu atslēgu masīvu, un tā ignorē mantotos rekvizītus.
Sintakse:
Reflect.ownKeys( obj );
Parametri:
- Obj: Šis parametrs satur mērķa objektu, un tas tiek izmantots, lai iegūtu savas atslēgas.
Atgriešanas vērtība:
- Šī metode vienmēr atgriež mērķa objekta rekvizītu atslēgu masīvu.
Piemērs: Šajā piemērā mēs izmantojam Reflect.ownKeys()> un includes()> metodi.
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.`); } Izvade
key2 exists in the JSON object.
Izmantojot Object.getOwnPropertySymbols()> un includes()> metodi
The Object.getOwnPropertySymbols()> metodi JavaScript ir standarta iebūvēts objekts, kas atgriež visu simbolu īpašību masīvu, kas atrodas dotajā objektā. Tiek atgriezts tukšs masīvs, līdz objektam ir iestatītas simbola īpašības.
Sintakse:
Object.getOwnPropertySymbols(obj);
Parametri:
- obj: Šis parametrs ir objekts, kura simbola īpašības ir jāatgriež.
Atgriešanas vērtība:
- Šī metode atgriež visu simbolu īpašību masīvu, kas atbilst īpašībām, kas atrodas tieši dotajā objektā.
Piemērs: Šajā piemērā mēs esam jūs dziedāt Object.getOwnPropertySymbols()> un includes()> metodi
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.`); } Izvade
Symbol(key2) does not exist in the JSON object.
Izmantojot Object.getOwnPropertyNames()> un includes()> metodi
The Object.getOwnPropertyNames()> metodi JavaScript ir standarta iebūvēts objekts, kas atgriež visus rekvizītus, kas atrodas dotajā objektā, izņemot uz simboliem balstītos neuzskaitāmos rekvizītus.
Sintakse:
Object.getOwnPropertyNames(obj);
Parametri:
Šī metode pieņem vienu parametru, kā minēts iepriekš un aprakstīts tālāk:
- obj: Šis parametrs satur objektu, kura uzskaitāmās un neuzskaitāmās īpašības ir jāatgriež.
Atgriešanas vērtība:
- Šī metode atgriež virkņu masīvu, kas atbilst īpašībām, kas atrodas tieši dotajā objektā.
Piemērs: Šajā piemērā mēs izmantojam metodi Object.getOwnPropertyNames() un 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.`); } Izvade
key2 exists in the JSON object.
Izmantojot Object.keys()> un includes()> metodi
The Object.keys()> metodi JavaScript tiek izmantots, lai izgūtu objekta uzskaitāmo rekvizītu nosaukumu masīvu. Tas atgriež masīvu, kurā ir objekta atslēgas.
Sintakse:
Object.keys(obj);
Parametrs:
- obj : Tas ir objekts, kura neskaitāmie rekvizīti ir jāatgriež.
Atgriešanas vērtība:
- Tas atgriež virkņu masīvu, kas atspoguļo visas dotā objekta uzskaitāmās īpašības.
Piemērs: Šajā piemērā mēs izmantojam Object.keys() un include() metodi
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.`); } Izvade
key2 exists in the JSON object.