etc./StackOverFlow

JavaScript에서 객체에 키가 있는지 어떻게 확인합니까? [복제하다]

청렴결백한 만능 재주꾼 2022. 2. 19. 05:48
반응형

질문자 :kevin


옳은 일은 무엇입니까?

 if (myObj['key'] == undefined)

또는

 if (myObj['key'] == null)

또는

 if (myObj['key'])


연산자에서 JavaScript 시도하십시오.

 if ('key' in myObj)

그리고 그 반대입니다.

 if (!('key' in myObj))

조심하세요! in 연산자는 개체의 프로토타입 체인에 있는 키를 포함하여 모든 개체 키와 일치합니다.

myObj.hasOwnProperty('key') 를 사용하여 객체의 자체 키를 확인하고 myObj 직접 key 를 사용할 수 있는 경우 true

 myObj.hasOwnProperty('key')

in 연산자를 사용해야 하는 특별한 이유가 없는 한 myObj.hasOwnProperty('key') 를 사용하면 대부분의 코드에서 찾고 있는 결과가 생성됩니다.


ForYourOwnGood

hasOwnProperty 사용해야 합니다. 예를 들어:

 myObj.hasOwnProperty('myKey');

참고: ESLint를 사용하는 경우 위의 경우 no-prototype-builtins 규칙을 위반한 오류가 발생할 수 있습니다. 이 경우 해결 방법은 다음과 같습니다.

 Object.prototype.hasOwnProperty.call(myObj, 'myKey');

typeoneerror

출처 : http:www.stackoverflow.com/questions/455338/how-do-i-check-if-an-object-has-a-key-in-javascript

반응형