객체구성
const 객체명 = {
키(key):값(value)
}
ex)
const superman = {
name : 'clark',
age : 33, //마지막 쉼표는 없어도 되지만, 수정,삭제,이동시 용이
}
객체 접근
.
[]
superman.name //'clark'
superman['age'] //33
객체 추가
.
[]
superman.gender = 'male';
superman['hairColor'] = 'black';
객체 삭제
delete
delete superman.hairColor;
단축 프로퍼티(property)
const name = 'clark';
const age = 33;
const superman = {
name, //name:name과 같음
age, //age:age와 같음
gender : 'male',
}
프로퍼티(property) 존재 여부 확인
존재하지 않는 프로퍼티에 접근하게 되면 에러가 발생하지 않고 undefined가 나옴
in
연산자로 프로퍼티 존재확인 가능'birthDay' in superman;
//false
'age' in superman;
//true
function isAdult(user){
if(!('age' in user) || //user에 age가 없거나
user.age < 20) { //20살 미만이면 false
return false;
}
return true;
}
const Mike = {
name : "Mike",
age : 30
};
const Jane = {
name : "Jane"
};
console.log(isAdult(Jane)) //false 출력
for...in 반복문
객체를 순회하면서 값을 얻을 수 있음
const Mike = {
name : "Mike",
age : 30
};
for(x in Mike){ //x는 Mike가 가진 key값
console.log(Mike[x]) //Mike['name']이렇게 한번 돌고 Mike['age']이렇게 또 돌고
} //"Mike" 30 으로 출력