In JavaScript, lavorare con oggetti JSON (JavaScript Object Notation) è comune e spesso potrebbe essere necessario verificare se esiste una determinata chiave all'interno di un oggetto. Questo articolo illustra vari metodi per eseguire questa attività in modo efficiente.
Gli oggetti JSON, caratterizzati dalle loro coppie chiave-valore, sono strutture dati versatili utilizzate per archiviare e trasmettere dati. Tuttavia, determinare la presenza di una chiave specifica all'interno di tali oggetti è fondamentale per eseguire operazioni condizionali o accedere ai dati annidati.
Di seguito sono riportati i metodi per verificare se esiste una chiave all'interno di un oggetto JSON:
Tabella dei contenuti
- Metodo JavaScript hasOwnProperty()
- Utilizzo in Operatore
- Utilizzo del metodo Reflect.ownKeys() e includes()
- Utilizzo del metodo Object.getOwnPropertySymbols() e includes()
- Utilizzando Object.getOwnPropertyNames() e il metodo includes()
- Utilizzando Object.keys() e il metodo includes()
1. Metodo JavaScript hasOwnProperty()
Metodo JavaScript hasOwnProperty() restituisce un valore booleano che indica se l'oggetto ha la proprietà definita come propria proprietà (invece di ereditarla).
Sintassi:
obj.hasOwnProperty(prop);>
parametri:
- puntello: Questo parametro è obbligatorio. Specifica il nome della stringa o il simbolo della proprietà da controllare.
Valore di ritorno:
Restituisce un valore booleano che indica se l'oggetto ha la proprietà data come propria proprietà.
jlist
Esempio 1: Questo esempio verifica prop_1 del ogg usando proprietà 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()> Produzione
let 'obj' has prop_1 property>
Esempio 2: Questo esempio verifica pro_1 del ogg mediante un semplice accesso all'array.
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()> Produzione
let 'obj' has not pro_1 property>
Utilizzandoin>Operatore
JavaScript in>Operatore è un operatore integrato che viene utilizzato per verificare se una particolare proprietà esiste o meno in un oggetto. Restituisce un valore booleano VERO se la proprietà specificata è in un oggetto, altrimenti restituisce falso .
Sintassi:
prop in object>
parametri:
- puntello : Questo parametro contiene la stringa o il simbolo che rappresenta il nome di una proprietà o l'indice di una matrice.
- oggetto: Questo parametro è un oggetto che deve essere verificato se contiene il file puntello.
Valore di ritorno:
Questo metodo restituisce un valore booleano. Il valore VERO viene restituito se la proprietà specificata è trovato in un oggetto, altrimenti restituisce false.
Esempio: In questo esempio, stiamo utilizzandoin>Operatore.
// 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.'); }> Produzione
The key 'age' exists in the JSON object.>
UtilizzandoReflect.ownKeys()>Eincludes()>metodo
JaScript Reflect.ownKeys()> Il metodo in Javascript viene utilizzato per restituire un array delle chiavi di proprietà dell'oggetto di destinazione e ignora le proprietà ereditate.
Sintassi:
Reflect.ownKeys( obj );>
parametri:
- Oggetto: Questo parametro contiene l'oggetto di destinazione e viene utilizzato per ottenere le proprie chiavi.
Valore di ritorno:
- Questo metodo restituisce sempre l'array delle chiavi di proprietà dell'oggetto di destinazione.
Esempio: In questo esempio stiamo usando Reflect.ownKeys()> Eincludes()>metodo.
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.`); }> Produzione
key2 exists in the JSON object.>
Utilizzando Object.getOwnPropertySymbols()> E includes()> metodo
IL Object.getOwnPropertySymbols()> metodo in JavaScript è un oggetto integrato standard che restituisce un array di tutte le proprietà dei simboli presenti in un dato oggetto. Viene restituito un array vuoto finché le proprietà del simbolo non vengono impostate sull'oggetto.
Sintassi:
Object.getOwnPropertySymbols(obj);>
parametri:
- oggetto: Questo parametro è l'oggetto di cui devono essere restituite le proprietà del simbolo.
Valore di ritorno:
- Questo metodo restituisce un array di tutte le proprietà del simbolo che corrispondono alle proprietà trovate direttamente nell'oggetto dato.
Esempio: In questo esempio siamo tu cantare Object.getOwnPropertySymbols()> E includes()> metodo
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.`); }> Produzione
Symbol(key2) does not exist in the JSON object.>
Utilizzando Object.getOwnPropertyNames()> E includes()> metodo
IL Object.getOwnPropertyNames()> metodo in JavaScript è un oggetto integrato standard che restituisce tutte le proprietà presenti in un dato oggetto ad eccezione delle proprietà non enumerabili basate su simboli.
Sintassi:
Object.getOwnPropertyNames(obj);>
parametri:
Questo metodo accetta un singolo parametro come menzionato sopra e descritto di seguito:
- oggetto: Questo parametro contiene l'oggetto le cui proprietà enumerabili e non enumerabili devono essere restituite.
Valore di ritorno:
- Questo metodo restituisce un array di stringhe che corrisponde alle proprietà trovate direttamente nell'oggetto dato.
Esempio: In questo esempio stiamo utilizzando Object.getOwnPropertyNames() e il metodo 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.`); }> Produzione
key2 exists in the JSON object.>
Utilizzando Object.keys()> E includes()> metodo
IL Object.keys()> metodo in JavaScript viene utilizzato per recuperare un array di nomi di proprietà enumerabili di un oggetto. Restituisce un array contenente le chiavi dell'oggetto.
Sintassi:
Object.keys(obj);>
Parametro:
- ogg : è l'oggetto le cui proprietà enumerabili devono essere restituite.
Valore di ritorno:
- Restituisce un array di stringhe che rappresentano tutte le proprietà enumerabili dell'oggetto dato.
Esempio: In questo esempio stiamo utilizzando Object.keys() e il metodo 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.`); }> Produzione
key2 exists in the JSON object.>