Programming/Javascript
[Javascript] 객체 확장 표현식
Bam_t
2021. 5. 7. 16:21
728x90
ES2015가 도입되며 객체의 표현에서 간결한 문법들을 많이 지원하게 되었습니다.
1.키 이름과 값이 같은 경우
기존에 키 이름과 키 값이 동일한 경우에도 {키 이름: 키 값}으로 묶어서 표현했었습니다.
let a = 1;
let b = 1;
let obj = { a: a, b: b };
이런 경우에 ES2015에서는 다음과 같이 표현할 수 있게 되었습니다.
let a = 1;
let b = 1;
let obj = { a, b };
위의 경우처럼 키 값을 생략하게 되면 키의 이름을 통해 키 값을 지정하게 됩니다.
즉, 객체 변수 obj에 대입된 a와 b는 키의 이름이고, 이 이름을 통해 키 값 a=1 , b=1을 지정해 줍니다.
2. 계산된 키 값 넣기
계산된 키 값을 넣을 때 이전 버전에서는 키 값을 지정해주는 코드를 따로 작성해야 했었습니다.
let str = 'ar';
let obj = {};
obj['c' + str] = 'truck';
ES2015 이후 버전에서는 객체를 생성하고 중괄호 블록 내부에 대괄호를 이용해 바로 계산된 키 값을 넣을 수 있게되었습니다.
let str = 'ar';
let obj = {
['c' + str]: 'SUV',
};
3. 객체에 함수 포함시키기
객체에 함수를 포함시키기 위해서는 변수에 함수 리터럴을 담고 function 명령을 이용해 선언했습니다.
let obj = {
funcInObject: function() {
return console.log('개구리');
}
};
그러나 바로 메소드 형태로 선언하고 function 명령 없이 선언이 가능해졌습니다.
let obj = {
funcInObject() {
console.log('두꺼비');
}
};
728x90