JS코드를 작성하다보면, JS객체 또는 JSON에 key값을 동적으로 할당하고 싶을때가 있습니다.
JS객체는 key와 value의 쌍으로 이루어져 있으며 따옴표나 쌍따옴표를 사용하여 작성합니다.
아래 keyname은 something객체의 key값에 들어갈 동적인 값 입니다.
let keyname = 'Name';
let something = {
keyname + 'postfix' : 'value'
}
대충 생각해보면 위와 같은 코드는 정상적으로 동작할 것 같습니다. 하지만, 위 코드는 SyntaxError가 발생합니다.
value 부분에는 함수나 String을 이어붙여도 자동으로 처리해주고 변수도 사용할 수 있지만 key부분에는 그런 처리가 허
용되지 않습니다.
그렇다면 어떻게 동적으로 key값을 적용할 수 있을까요?
두 가지 방법이 있습니다.
1. 객체 생성과 동시에 동적인 key값 설정
let keyname = 'Name';
let something = {
[keyname + 'postfix'] : 'value'
};
2. 객체 생성 후 동적인 key값 설정
let keyname = 'Name';
let something = { };
something[keyname + 'postfix'] = 'value';
위 두가지 방식을 사용하여 동적인 key값을 넣을 수 있습니다.
Reference
'STUDY > JavaScript' 카테고리의 다른 글
[JavaScript&jQuery] 동적 이벤트 바인딩(Dynamic event binding) (0) | 2019.11.20 |
---|---|
[JavaScript] JSP문서의 실행 순서는 어떻게 될까?? (0) | 2019.03.25 |
[JavaScript] var와 let 그리고 const (0) | 2019.03.05 |
[JS]자바스크립트는 어떻게 작동하는가 : 메모리 관리 + 4가지 흔한 메모리 누수 대처법 (0) | 2018.11.09 |
[JS]js파일 안에서 아무리 소스를 수정해도 반영이 안된다면?? (0) | 2018.10.14 |