객체는 관련된 데이터나 함수의 집합을 의미한다.
예를 들어
let num = 5;
let func = function() {
console.log('hello');
}
이렇게 각각 하나의 변수에는 하나의 데이터가 들어 갈 수 있다.
하지만 객체에서는 이러한 변수들과 함수를 동시에 가질 수 있다.
그러한 객체를 선언하는 방법은 이와 같다.
let obj = {
key: value,
...
};
//ex
let obj = {
num: 8,
func: () => {
console.log('hello');
}
};
이런식으로 하나의 객체 변수에 여러가지 데이터를 넣을 수 있다.
여기서 key
는 객체에서 프로퍼티(속성)이라고 불리며
value
는 말 그대로 데이터 값이다.
그리고 객체의 속성에 접근하기 위해서는
console.log(obj.num); // 8
console.log(obj['num']); // 8
obj.func(); // hello
obj['func'](); // hello
이와 같이 사용하여 객체의 속성에 접근 할 수 있다.
이제는 객체를 선언하고 필요에 따라 속성을 추가하고 삭제하는 방법을 알아보자.
이미 만들어진 객체에 어떠한 속성의 추가가 필요하다고 판단되어 추가해야 할 경우에는 아래와 같이 속성을 추가 할 수 있다.
let obj = {
str: 'wow'
};
obj.num1 = 8;
obj['num2'] = 10;
console.log(obj.num1) // 8
console.log(obj.num2) // 10
그리고 객체의 속성을 지우고 싶을때는 delete
키워드를 사용하여
아래와 같이 속성을 지울 수 있다.
let obj = {
num1: 10,
num2: 10
};
delete obj.num1; // or obj['num1'];
console.log(obj.num1); // undefined