자바스크립트(javascript)/개념
object(객체) - 자바스크립트 객체
Doo Hee
2023. 8. 24. 23:05
📝정리
object(객체)
{ }를 이용하여 선언하며 key: value의 쌍으로 이루어져 있다.
객체에는 키값뿐만 아니라 함수도 선언할 수 있는데, 이때 객체 안에 정의된 함수를 메서드(method)라고 부른다.
// 객체 선언
let 객체이름 = {
key: value;
key: value;
key: value;
함수 이름: function () {
return 반환할 값;
}
};
객체 안의 key에 해당하는 value를 알고싶다면 두가지 형태로 호출할 수 있다.
console.log(객체 이름.name);
console.log(객체 이름['name']);
변수를 key나 value에 넣는 것도 가능하다. key에 변수를 넣을려면 대괄호[ ]를 이용해 안에 변수를 넣어주면 된다. value의 경우 그냥 변수를 적어주면 된다.
const nameKey = 'name';
const nameValue = '안유진';
const groupKey = 'group';
const groupValue = '아이브';
const yuJin = {
[nameKey]: nameValue,
[groupKey]: groupValue,
}
존재하지 않는 키값을 넣어주면 객체에 새로운 키값으로 생성이 되기도 하며, delete 키워드를 통해 키값을 삭제할 수도 있다.
yuJin2['englishName'] = 'An Yu Jin'; // 키값 추가
delete yuJin2['englishName']; // 키값 삭제
이때, 한가지 의문점이 든다. const로 선언할 경우 선언된 값은 변경할 수 없는데, 위의 코드를 보면 수정이 가능하다. 그 이유가 무엇일까?
- const로 선언할 경우 객체 자체를 변경할 순 없지만, 객체 안의 메서드나 프로퍼티는 변경할 수 있기 때문이다.