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

 

JSON 생성시 Key값을 동적으로 할당하기 :: Outsider's Dev Story

JSON은 아주 유용하고 간편한 데이터 스트럭처이고 다들 아시다 시피 아래와 같이 사용합니다.[code javascript]var something = { name: 'Outsider', blog: 'http://blog.outsider.ne.kr'}[/code]키와 값의...

blog.outsider.ne.kr

 

+ Recent posts