JavaScript Tjek, om der findes en nøgle inde i et JSON-objekt

I JavaScript er det almindeligt at arbejde med JSON-objekter (JavaScript Object Notation), og ofte skal du muligvis kontrollere, om en bestemt nøgle findes i et objekt. Denne artikel vil fortælle forskellige metoder til at udføre denne opgave effektivt.

JSON-objekter, der er karakteriseret ved deres nøgleværdi-par, er alsidige datastrukturer, der bruges til lagring og overførsel af data. Det er imidlertid afgørende at bestemme tilstedeværelsen af ​​en specifik nøgle i sådanne objekter for at udføre betingede operationer eller få adgang til indlejrede data.

Nedenfor er metoderne til at kontrollere, om der findes en nøgle inde i et JSON-objekt:

Indholdsfortegnelse

1. JavaScript hasOwnProperty() metode

JavaScript hasOwnProperty() metode returnerer en boolsk værdi, der angiver, om objektet har den definerede egenskab som sin egen egenskab (i modsætning til at nedarve den).

Syntaks:

obj.hasOwnProperty(prop); 

Parametre:

  • rekvisit: Denne parameter er påkrævet. Det angiver strengnavnet eller symbolet for den egenskab, der skal kontrolleres.

Returneringsværdi:

Det returnerer en boolsk værdi, der angiver, om objektet har den givne egenskab som sin egen egenskab.

Eksempel 1: Dette eksempel tjekker for prop_1 af obj ved hjælp af hasOwnProperty ejendom .

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() 

Produktion
let 'obj' has prop_1 property 

Eksempel 2: Dette eksempel tjekker for pro_1 af obj ved simpel array-adgang.

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() 

Produktion
let 'obj' has not pro_1 property 

Ved brug af in> Operatør

JavaScript in> Operatør er en indbygget operatør, som bruges til at kontrollere, om en bestemt egenskab findes i et objekt eller ej. Det returnerer en boolesk værdi rigtigt hvis den angivne egenskab er i et objekt, ellers vender den tilbage falsk .

Syntaks:

prop    in    object 

Parametre:

  • rekvisit : Denne parameter indeholder strengen eller symbolet, der repræsenterer et egenskabsnavn eller et matrixindeks.
  • objekt: Denne parameter er et objekt, der skal kontrolleres, om det indeholder rekvisit.

Returværdi:

Denne metode returnerer en boolesk værdi. Værdien rigtigt er returneret hvis den angivne egenskab er fundet i et objekt, ellers returnerer det falsk.

Eksempel: I dette eksempel bruger vi in> Operatør.

Javascript
// 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.'); } 

Produktion
The key 'age' exists in the JSON object. 

Ved brug af Reflect.ownKeys()> og includes()> metode

JaScript Reflect.ownKeys()> metode i Javascript bruges til at returnere en række af målobjektets egne egenskabsnøgler, og den ignorerer de nedarvede egenskaber.

Syntaks:

Reflect.ownKeys( obj ); 

Parametre:

  • Obj: Denne parameter indeholder målobjektet, og den bruges til at få sine egne nøgler.

Returværdi:

  • Denne metode returnerer altid Array af målobjektets egne egenskabsnøgler.

Eksempel: I dette eksempel bruger vi Reflect.ownKeys()> og includes()> metode.

Javascript
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.`); } 

Produktion
key2 exists in the JSON object. 

Ved brug af Object.getOwnPropertySymbols()> og includes()> metode

Det Object.getOwnPropertySymbols()> metode i JavaScript er et standard indbygget objekt, som returnerer en række af alle symbolegenskaber, der er til stede i et givet objekt. En tom matrix returneres, indtil symbolegenskaber er indstillet på objektet.

Syntaks:

Object.getOwnPropertySymbols(obj); 

Parametre:

  • obj: Denne parameter er det objekt, hvis symbolegenskaber skal returneres.

Returværdi:

  • Denne metode returnerer en matrix af alle symbolegenskaber, der svarer til de egenskaber, der findes direkte i det givne objekt.

Eksempel: I dette eksempel er vi u synge Object.getOwnPropertySymbols()> og includes()> metode

Javascript
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.`); } 

Produktion
Symbol(key2) does not exist in the JSON object. 

Ved brug af Object.getOwnPropertyNames()> og includes()> metode

Det Object.getOwnPropertyNames()> metode i JavaScript er et standard indbygget objekt, som returnerer alle egenskaber, der er til stede i et givet objekt, undtagen de symbolbaserede ikke-tællelige egenskaber.

Syntaks:

Object.getOwnPropertyNames(obj); 

Parametre:

Denne metode accepterer en enkelt parameter som nævnt ovenfor og beskrevet nedenfor:

  • obj: Denne parameter indeholder det objekt, hvis numerable og non-numerable egenskaber skal returneres.

Returværdi:

  • Denne metode returnerer et array af strenge, der svarer til de egenskaber, der findes direkte i det givne objekt.

Eksempel: I dette eksempel bruger vi Object.getOwnPropertyNames() og include() metoden.

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.`); } 

Produktion
key2 exists in the JSON object. 

Ved brug af Object.keys()> og includes()> metode

Det Object.keys()> metode i JavaScript bruges til at hente en række af de talrige egenskabsnavne på et objekt. Det returnerer et array, der indeholder nøglerne til objektet.

Syntaks:

Object.keys(obj); 

Parameter:

  • obj : Det er objektet, hvis talløse egenskaber skal returneres.

Returneringsværdi:

  • Det returnerer et array af strenge, der repræsenterer alle de talløse egenskaber for det givne objekt.

Eksempel: I dette eksempel bruger vi Object.keys() og include() metoden

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.`); } 

Produktion
key2 exists in the JSON object.