JavaScript에서는 JSON(JavaScript Object Notation) 개체를 사용하는 것이 일반적이며 개체 내에 특정 키가 있는지 확인해야 하는 경우가 많습니다. 이 문서에서는 이 작업을 효율적으로 수행하는 다양한 방법을 설명합니다.
키-값 쌍이 특징인 JSON 개체는 데이터를 저장하고 전송하는 데 사용되는 다목적 데이터 구조입니다. 그러나 조건부 작업을 수행하거나 중첩된 데이터에 액세스하려면 해당 개체 내에 특정 키가 있는지 확인하는 것이 중요합니다.
t 플립플롭
다음은 JSON 개체 내에 키가 있는지 확인하는 방법입니다.
내용의 테이블
- JavaScript hasOwnProperty() 메서드
- 연산자에서 사용
- Reflect.ownKeys() 및 include() 메소드 사용
- Object.getOwnPropertySymbols() 및 include() 메소드 사용
- Object.getOwnPropertyNames() 및 include() 메소드 사용
- Object.keys() 및 include() 메소드 사용
1. 자바스크립트 hasOwnProperty() 메서드
JavaScript hasOwnProperty() 메서드 객체가 정의된 속성을 자체 속성으로 갖고 있는지 여부를 나타내는 부울을 반환합니다(상속하는 것과 반대).
통사론:
obj.hasOwnProperty(prop);>
매개변수:
- 소품: 이 매개변수는 필수입니다. 확인할 속성의 문자열 이름이나 기호를 지정합니다.
반환 값:
객체가 주어진 속성을 자체 속성으로 가지고 있는지 여부를 나타내는 부울 값을 반환합니다.
예시 1: 이 예에서는 다음 사항을 확인합니다. prop_1 ~의 객체 사용하여 hasOwnProperty 속성 .
자바스크립트 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()>
산출
let 'obj' has prop_1 property>
예 2: 이 예에서는 다음 사항을 확인합니다. pro_1 ~의 객체 간단한 배열 액세스로.
자바스크립트 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()>
산출
let 'obj' has not pro_1 property>
사용in>
운영자
자바스크립트 in>
운영자 특정 속성이 객체에 존재하는지 여부를 확인하는 데 사용되는 내장 연산자입니다. 부울 값을 반환합니다. 진실 지정된 속성이 객체에 있으면 그렇지 않으면 반환됩니다. 거짓 .
통사론:
prop in object>
매개변수:
- 소품 : 이 매개변수는 속성 이름이나 배열 인덱스를 나타내는 문자열이나 기호를 보유합니다.
- 물체: 이 매개변수는 해당 항목이 포함되어 있는지 확인하는 개체입니다. 소품.
반환 값:
이 메서드는 부울 값을 반환합니다. 가치 진실 반환됩니다 지정된 속성이 다음과 같은 경우 설립하다 객체에서 그렇지 않으면 false를 반환합니다.
예: 이 예에서는in>
운영자.
// 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.'); }>
산출
The key 'age' exists in the JSON object.>
사용Reflect.ownKeys()>
그리고includes()>
방법
자스크립트 Reflect.ownKeys()>
Javascript의 메소드는 대상 객체의 자체 속성 키 배열을 반환하는 데 사용되며 상속된 속성은 무시됩니다.
통사론:
Reflect.ownKeys( obj );>
매개변수:
- 목표: 이 매개변수는 대상 객체를 보유하며 자체 키를 가져오는 데 사용됩니다.
반환 값:
- 이 메서드는 항상 대상 객체의 자체 속성 키 배열을 반환합니다.
예: 이 예에서는 Reflect.ownKeys()>
그리고includes()>
방법.
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.`); }>
산출
key2 exists in the JSON object.>
사용 Object.getOwnPropertySymbols()>
그리고 includes()>
방법
그만큼 Object.getOwnPropertySymbols()>
방법 JavaScript에서는 주어진 객체에 존재하는 모든 기호 속성의 배열을 반환하는 표준 내장 객체입니다. 객체에 기호 속성이 설정될 때까지 빈 배열이 반환됩니다.
통사론:
Object.getOwnPropertySymbols(obj);>
매개변수:
- 객체: 이 매개변수는 기호 속성이 반환될 객체입니다.
반환 값:
- 이 메소드는 주어진 객체에서 직접 발견된 속성에 해당하는 모든 기호 속성의 배열을 반환합니다.
예: 이 예에서 우리는 당신입니다 노래하다 Object.getOwnPropertySymbols()>
그리고 includes()>
방법
자바에서 문자열을 int로 변환자바스크립트
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.`); }>
산출
Symbol(key2) does not exist in the JSON object.>
사용 Object.getOwnPropertyNames()>
그리고 includes()>
방법
그만큼 Object.getOwnPropertyNames()>
방법 JavaScript의 는 기호 기반의 열거 불가능한 속성을 제외하고 주어진 객체에 존재하는 모든 속성을 반환하는 표준 내장 객체입니다.
통사론:
Object.getOwnPropertyNames(obj);>
매개변수:
이 메서드는 위에서 언급하고 아래에 설명된 대로 단일 매개 변수를 허용합니다.
- 객체: 이 매개변수는 열거 가능 및 열거 불가능 속성이 반환되는 개체를 보유합니다.
반환 값:
- 이 메소드는 주어진 객체에서 직접 발견된 속성에 해당하는 문자열 배열을 반환합니다.
예: 이 예에서는 Object.getOwnPropertyNames() 및 include() 메서드를 사용하고 있습니다.
자바스크립트 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.`); }>
산출
key2 exists in the JSON object.>
사용 Object.keys()>
그리고 includes()>
방법
그만큼 Object.keys()>
방법 JavaScript에서는 객체의 열거 가능한 속성 이름 배열을 검색하는 데 사용됩니다. 객체의 키가 포함된 배열을 반환합니다.
통사론:
Object.keys(obj);>
매개변수:
- 객체 : 열거 가능한 속성이 반환될 객체입니다.
반환 값:
- 주어진 객체의 열거 가능한 모든 속성을 나타내는 문자열 배열을 반환합니다.
예: 이 예에서는 Object.keys() 및 include() 메소드를 사용하고 있습니다.
자바스크립트 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.`); }>
산출
key2 exists in the JSON object.>