logo

JavaScript Controleer of er een sleutel bestaat in een JSON-object

In JavaScript is het gebruikelijk om met JSON-objecten (JavaScript Object Notation) te werken, en vaak moet u mogelijk controleren of een bepaalde sleutel binnen een object bestaat. In dit artikel worden verschillende methoden beschreven om deze taak efficiënt uit te voeren.

JSON-objecten, gekenmerkt door hun sleutel-waardeparen, zijn veelzijdige datastructuren die worden gebruikt voor het opslaan en verzenden van gegevens. Het bepalen van de aanwezigheid van een specifieke sleutel binnen dergelijke objecten is echter cruciaal voor het uitvoeren van voorwaardelijke bewerkingen of het verkrijgen van toegang tot geneste gegevens.



Hieronder staan ​​de methoden om te controleren of er een sleutel bestaat in een JSON-object:

Inhoudsopgave

1. JavaScript hasOwnProperty()-methode

JavaScript hasOwnProperty()-methode retourneert een Booleaanse waarde die aangeeft of het object de gedefinieerde eigenschap als zijn eigen eigenschap heeft (in plaats van deze over te nemen).



Syntaxis:

obj.hasOwnProperty(prop);>

Parameters:

  • steun: Deze parameter is vereist. Het specificeert de tekenreeksnaam of het symbool van de eigenschap die moet worden gecontroleerd.

Winstwaarde:

Het retourneert een Booleaanse waarde die aangeeft of het object de gegeven eigenschap als eigen eigenschap heeft.

Voorbeeld 1: In dit voorbeeld wordt gecontroleerd op prop_1 van de obj door het gebruiken van hasOwnProperty-eigenschap .

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

Uitvoer
let 'obj' has prop_1 property>

Voorbeeld 2: In dit voorbeeld wordt gecontroleerd op pro_1 van de obj door eenvoudige array-toegang.



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

Uitvoer
let 'obj' has not pro_1 property>

Gebruik makend vanin>Exploitant

JavaScript in>Exploitant is een ingebouwde operator die wordt gebruikt om te controleren of een bepaalde eigenschap in een object bestaat of niet. Het retourneert een Booleaanse waarde WAAR als de opgegeven eigenschap zich in een object bevindt, wordt deze anders geretourneerd vals .

Syntaxis:

prop    in    object>

Parameters:

  • prop : Deze parameter bevat de tekenreeks of het symbool dat een eigenschapsnaam of array-index vertegenwoordigt.
  • voorwerp: Deze parameter is een object waarvan moet worden gecontroleerd of het de prop.

Winstwaarde:

Deze methode retourneert een Booleaanse waarde. De waarde WAAR wordt geretourneerd als de opgegeven eigenschap dat is gevonden in een object, anders retourneert het false.

Voorbeeld: In dit voorbeeld gebruiken wein>Exploitant.

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

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

Gebruik makend vanReflect.ownKeys()>Enincludes()>methode

JaScript Reflect.ownKeys()> methode in Javascript wordt gebruikt om een ​​array van de eigen eigenschapssleutels van het doelobject te retourneren en negeert de overgenomen eigenschappen.

Syntaxis:

Reflect.ownKeys( obj );>

Parameters:

  • Obj: Deze parameter bevat het doelobject en wordt gebruikt om zijn eigen sleutels te verkrijgen.

Winstwaarde:

  • Deze methode retourneert altijd de array van de eigen eigenschapssleutels van het doelobject.

Voorbeeld: In dit voorbeeld gebruiken we Reflect.ownKeys()> Enincludes()>methode.

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

Uitvoer
key2 exists in the JSON object.>

Gebruik makend van Object.getOwnPropertySymbols()> En includes()> methode

De Object.getOwnPropertySymbols()> methode in JavaScript is een standaard ingebouwd object dat een array retourneert van alle symbooleigenschappen die aanwezig zijn in een bepaald object. Er wordt een lege array geretourneerd totdat symbooleigenschappen voor het object zijn ingesteld.

Syntaxis:

Object.getOwnPropertySymbols(obj);>

Parameters:

  • obj: Deze parameter is het object waarvan de symbooleigenschappen moeten worden geretourneerd.

Winstwaarde:

  • Deze methode retourneert een array met alle symbooleigenschappen die overeenkomen met de eigenschappen die rechtstreeks in het gegeven object worden gevonden.

Voorbeeld: In dit voorbeeld zijn wij u zingen Object.getOwnPropertySymbols()> En includes()> methode

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

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

Gebruik makend van Object.getOwnPropertyNames()> En includes()> methode

De Object.getOwnPropertyNames()> methode in JavaScript is een standaard ingebouwd object dat alle eigenschappen retourneert die aanwezig zijn in een bepaald object, behalve de op symbolen gebaseerde niet-opsombare eigenschappen.

jquery een klik

Syntaxis:

Object.getOwnPropertyNames(obj);>

Parameters:

Deze methode accepteert een enkele parameter zoals hierboven vermeld en hieronder beschreven:

  • obj: Deze parameter bevat het object waarvan de opsombare en niet-opsombare eigenschappen moeten worden geretourneerd.

Winstwaarde:

  • Deze methode retourneert een array van tekenreeksen die overeenkomen met de eigenschappen die rechtstreeks in het gegeven object worden gevonden.

Voorbeeld: In dit voorbeeld gebruiken we de methoden Object.getOwnPropertyNames() en 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.`); }>

Uitvoer
key2 exists in the JSON object.>

Gebruik makend van Object.keys()> En includes()> methode

De Object.keys()> methode in JavaScript wordt gebruikt om een ​​array van de opsombare eigenschapsnamen van een object op te halen. Het retourneert een array met de sleutels van het object.

Syntaxis:

Object.keys(obj);>

Parameter:

  • obj : Het is het object waarvan de opsombare eigenschappen moeten worden geretourneerd.

Winstwaarde:

  • Het retourneert een array van tekenreeksen die alle opsombare eigenschappen van het gegeven object vertegenwoordigen.

Voorbeeld: In dit voorbeeld gebruiken we de methoden Object.keys() en include().

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

Uitvoer
key2 exists in the JSON object.>