JavaScript 개체에 속성이 있는지 확인하는 5가지 방법

프로그래밍으로 여행을 시작했을 때 이해하는 데 시간이 걸리는 많은 문제가 있었습니다. JavaScript 객체가 그 중 하나였습니다. 하지만 자주 사용하기 시작한 후 시간이 지남에 따라 점차적으로 배웠습니다. 나는 그것이 다른 사람들에게 다른 주제라고 확신합니다.

그래서 오늘은 우리가 자주 다루는 것 중 하나인 속성이 객체에 존재하는지 확인하는 방법에 대해 써보려고 합니다.



1. 객체 메소드 hasOwnProperty() 사용하기



가장 일반적인 해결책은 일반적인 개체 메서드 중 하나인 hasOwnProperty()를 사용하는 것입니다. 이 메서드는 개체에 지정된 속성이 있는지 여부를 나타내는 부울을 반환합니다.

var favAuthor = {
  name: 'Dan Brown',
  favBook: 'Lost Symbol',
  favCharacter: 'Robert Langdon'
}
if(favAuthor.hasOwnProperty('favCharacter')) // true
{console.log('The property exists')}
else {
  console.log('The property does not exist')
}


2. 연산자에서


in 연산자는 지정된 속성이 지정된 개체에 있는 경우 true를 반환합니다.

var favAuthor = {
  name: 'Dan Brown',
  favBook: 'Lost Symbol',
  favCharacter: 'Robert Langdon'
}
if('name' in favAuthor) // true
{console.log('The property exists')}
else {
  console.log('The property does not exist')
}


3. typeof를 사용하여 undefined와 비교



속성이 존재하지 않는 경우 속성의 유형은 ’undefined' 이어야 하므로 typeof 연산자를 사용하여 ’undefined' 와 비교할 수 있습니다.

var favAuthor = {
  name: 'Dan Brown',
  favBook: 'Lost Symbol',
  favCharacter: 'Robert Langdon'
}
if(typeof favAuthor.name !== 'undefined') // true
{console.log('The property exists')}
else {
  console.log('The property does not exist')
}


4. 사용!! 연산자(더블뱅 연산자)



이것은 개체의 속성을 확인하는 가장 덜 알려진 방법입니다. JavaScript에서 모든 값에는 관련 부울(true 또는 false)이 있습니다. 예를 들어 null 값에는 false라는 관련 부울 값이 있습니다. abc와 같은 문자열 값에는 연결된 부울 값 true가 있습니다.
truthyherefalsyhere 목록을 찾을 수 있습니다.

Null은 falsy 값입니다.

!!null // false


따라서 !! 연산자를 사용하여 확인하려는 속성의 이름으로 이를 활용할 수 있습니다. 속성 값의 키가 null이 아닌 경우 true를 반환합니다.

var favAuthor = {
  name: 'Dan Brown',
  favBook: 'Lost Symbol',
  favCharacter: 'Robert Langdon'
}
if(!!favAuthor.name) // true
{console.log('The property exists')}
else {
  console.log('The property does not exist')
}


5. 옵티컬 체인 사용



광 연결을 사용하여 참 또는 거짓을 반환할 수 있습니다. 우리가 이용할 수 있는 속성이 존재하지 않으면 undefined를 반환합니다.

var favAuthor = {
  name: 'Dan Brown',
  favBook: 'Lost Symbol',
  favCharacter: 'Robert Langdon'
}
if(favAuthor?.name != undefined) {
  console.log('Property exists')
}
else {
  console.log('Property does not exist')
}



다른 방법을 알고 있다면 아래에 의견을 말하십시오.

감사합니다

좋은 웹페이지 즐겨찾기