logo

JavaScript Preverite, ali obstaja ključ znotraj predmeta JSON

V JavaScriptu je delo s predmeti JSON (JavaScript Object Notation) običajno in pogosto boste morda morali preveriti, ali v objektu obstaja določen ključ. Ta članek bo povedal različne metode za učinkovito izvedbo te naloge.

Objekti JSON, za katere so značilni pari ključ-vrednost, so vsestranske podatkovne strukture, ki se uporabljajo za shranjevanje in prenos podatkov. Vendar pa je ugotavljanje prisotnosti določenega ključa v takih objektih ključnega pomena za izvajanje pogojnih operacij ali dostop do ugnezdenih podatkov.



Spodaj so metode za preverjanje, ali ključ obstaja znotraj predmeta JSON:

Kazalo

1. Metoda JavaScript hasOwnProperty().

Metoda JavaScript hasOwnProperty(). vrne logično vrednost, ki označuje, ali ima objekt definirano lastnost kot svojo lastnost (v nasprotju z dedovanjem).



Sintaksa:

obj.hasOwnProperty(prop);>

Parametri:

  • rekvizit: Ta parameter je obvezen. Podaja ime niza ali simbol lastnosti, ki jo želite preveriti.

Povratna vrednost:

Vrne logično vrednost, ki kaže, ali ima predmet dano lastnost kot svojo lastnost.

Primer 1: Ta primer preverja prop_1 od obj z uporabo lastnost 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()>

Izhod
let 'obj' has prop_1 property>

Primer 2: Ta primer preverja pro_1 od obj s preprostim dostopom do polja.



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

Izhod
let 'obj' has not pro_1 property>

Uporabain>Operater

JavaScript in>Operater je vgrajen operator, ki se uporablja za preverjanje, ali določena lastnost obstaja v objektu ali ne. Vrne logično vrednost prav če je podana lastnost v objektu, sicer se vrne lažno .

Sintaksa:

prop    in    object>

Parametri:

  • prop : Ta parameter vsebuje niz ali simbol, ki predstavlja ime lastnosti ali indeks polja.
  • predmet: Ta parameter je predmet, za katerega je treba preveriti, ali vsebuje prop.

Vrnjena vrednost:

Ta metoda vrne logično vrednost. Vrednost prav se vrne če je navedena lastnost našel v objektu, sicer vrne false.

primer: V tem primeru uporabljamoin>Operater.

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

Izhod
The key 'age' exists in the JSON object.>

UporabaReflect.ownKeys()>inincludes()>metoda

JaScript Reflect.ownKeys()> metoda v Javascriptu se uporablja za vrnitev matrike lastnih ključev lastnosti ciljnega objekta in ignorira podedovane lastnosti.

Sintaksa:

Reflect.ownKeys( obj );>

Parametri:

  • predmet: Ta parameter vsebuje ciljni objekt in se uporablja za pridobivanje lastnih ključev.

Vrnjena vrednost:

  • Ta metoda vedno vrne matriko lastnih ključev lastnosti ciljnega objekta.

primer: V tem primeru uporabljamo Reflect.ownKeys()> inincludes()>metoda.

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

Izhod
key2 exists in the JSON object.>

Uporaba Object.getOwnPropertySymbols()> in includes()> metoda

The Object.getOwnPropertySymbols()> metoda v JavaScriptu je standardni vgrajeni objekt, ki vrne matriko vseh lastnosti simbola, ki so prisotne v danem objektu. Vrne se prazna matrika, dokler za objekt niso nastavljene lastnosti simbola.

Sintaksa:

Object.getOwnPropertySymbols(obj);>

Parametri:

  • predmet: Ta parameter je objekt, katerega lastnosti simbola naj bodo vrnjene.

Vrnjena vrednost:

  • Ta metoda vrne niz vseh lastnosti simbola, ki ustrezajo lastnostim, najdenim neposredno v danem objektu.

primer: V tem primeru smo u peti Object.getOwnPropertySymbols()> in includes()> metoda

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

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

Uporaba Object.getOwnPropertyNames()> in includes()> metoda

The Object.getOwnPropertyNames()> metoda v JavaScriptu je standardni vgrajeni objekt, ki vrne vse lastnosti, ki so prisotne v danem objektu, razen tistih neštetih lastnosti, ki temeljijo na simbolih.

Sintaksa:

Object.getOwnPropertyNames(obj);>

Parametri:

Ta metoda sprejme en sam parameter, kot je omenjeno zgoraj in opisano spodaj:

  • predmet: Ta parameter vsebuje objekt, katerega naštevne in nenaštevne lastnosti je treba vrniti.

Vrnjena vrednost:

  • Ta metoda vrne matriko nizov, ki ustreza lastnostim, najdenim neposredno v danem objektu.

primer: V tem primeru uporabljamo metodo Object.getOwnPropertyNames() in includes().

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

Izhod
key2 exists in the JSON object.>

Uporaba Object.keys()> in includes()> metoda

The Object.keys()> metoda v JavaScriptu se uporablja za pridobivanje niza naštevnih imen lastnosti predmeta. Vrne matriko, ki vsebuje ključe predmeta.

Sintaksa:

Object.keys(obj);>

Parameter:

  • obj : To je objekt, katerega naštevne lastnosti je treba vrniti.

Povratna vrednost:

  • Vrne matriko nizov, ki predstavljajo vse naštevne lastnosti danega predmeta.

primer: V tem primeru uporabljamo metodo Object.keys() in 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.`); }>

Izhod
key2 exists in the JSON object.>