JS 객체 속성 이름을 동적으로 설정해야합니다.
for(i=1; i<3; i++) {
var key = i+'name';
data = {
key : 'name1',
}
}
결과는 다음과 같아야합니다.
data = {
1name: 'name1'
2name: 'name1'
}
답변
var jsonVariable = {};
for(var i=1; i < 3; i++) {
jsonVariable[i + 'name'] = 'name' + i;
}
답변
[]
키를 동적으로 설정 하려면 표기법 을 사용해야 합니다.
var jsonVariable = {};
for(i=1; i<3; i++) {
var jsonKey = i+'name';
jsonVariable[jsonKey] = 'name1';
}
이제 ES6에서는 객체 리터럴 구문을 사용하여 객체 키를 동적으로 만들 수 있습니다. []
var key = i + 'name';
data = {
[key] : 'name1',
}
답변
ECMAScript 6을 사용하면 다음과 같이 변수 리터럴 이름을 객체 리터럴 구문과 함께 사용할 수 있습니다.
var keyName = 'myKey';
var obj = {
[keyName]: 1
};
obj.myKey;//1
이 구문은 다음과 같은 최신 브라우저에서 사용할 수 있습니다.
Edge 12+ (IE 지원 안 함), FF34 +, Chrome 44+, Opera 31+, Safari 7.1+
( https://kangax.github.io/compat-table/es6/ )
babel 과 같은 변환기 를 사용하여 이전 브라우저에 대한 지원을 추가 할 수 있습니다 . rollup 또는 webpack 과 같은 모듈 번 들러를 사용하는 경우 전체 프로젝트를 쉽게 처리 할 수 있습니다 .
답변
이것이 동적으로 값을 설정하는 방법입니다
var jsonVariable = {};
for (var i = 1; i < 3; i++) {
var jsonKey = i + 'name';
jsonVariable[jsonKey] = 'name' + i;
}
답변
답변
변수의 출처는 중요하지 않습니다. 가장 중요한 것은 … 대괄호 “[..]”사이에 변수 이름을 설정하십시오.
var optionName = 'nameA';
var JsonVar = {
[optionName] : 'some value'
}
답변
jsonVariable = {}
for(i=1; i<3; i++) {
var jsonKey = i+'name';
jsonVariable[jsonKey] = 'name1'
}
이것은 다음과 유사합니다
jsonVariable = {
1name : 'name1'
2name : 'name1'
}
![](http://daplus.net/wp-content/uploads/2023/04/coupang_part-e1630022808943-2.png)