- 해당 property가 object에 있는지 확인 하는 방법:
in
키워드 사용- object내의 property들에 대하여 반복문을 사용하는 방법:
for (let ~ in ~)
키워드 사용
단순히 key의 이름이 객체내에 존재하는지 여부를 확인할 때는 아래와 같은 구문을 사용하며, 이 때 반환되는 값은 boolean
입니다.
<keyName> in <objectName>
그리고 객체내의 속성들에 대하여 배열의 각 요소들의 경우와 마찬가지로 반복적으로 실행문을 적용해야할 경우에는 아래와 같은 구문을 사용합니다.
for (let key in obj) {
// ToDo
}
단순히 특정 속성의 존재 여부 또는 특정 속성의 값을 조회할 경우에는 간단히 표기법을 이용하여 표현이 가능합니다. 따라서 이런 경우에는 가급적 for (let key in obj)
사용을 지양하도록 해야 합니다.
GOOD :
// 'name'이라는 key 존재 여부 반환
return 'name' in obj;
// 'name' 속성 값 반환
return obj['name'];
// 또는
return obj.name;
BAD :
// 'name'이라는 key 존재 여부 반환
for (let key in obj) {
if (key === 'name') {
return true;
}
}
return false;
// 'name' 속성 값 반환
for (let key in obj) {
if (key === 'name') {
return obj[key];
}
}