etc./StackOverFlow

JavaScript는 변수로 객체 키를 설정합니다.

청렴결백한 만능 재주꾼 2023. 4. 20. 02:24
반응형

질문자 :Hunter McMillen


JavaScript에서 일부 개체를 만들고 해당 개체를 배열로 푸시하고 변수에 사용하려는 키를 저장한 다음 다음과 같이 개체를 만듭니다.

 var key = "happyCount"; myArray.push( { key : someValueArray } );

그러나 모든 개체에 대한 개체 배열을 검사하려고 할 때 키는 변수 키 값 대신 "key" 변수에서 키 값을 설정하는 방법이 있습니까?

더 나은 설명을 위한 바이올린: http://jsfiddle.net/Fr6eY/3/



먼저 개체를 만든 다음 [] 를 사용하여 설정해야 합니다.

 var key = "happyCount"; var obj = {}; obj[key] = someValueArray; myArray.push(obj);

2018년 업데이트:

ES6Babel 을 사용할 수 있다면 다음과 같은 새로운 기능을 사용할 수 있습니다.

 { [yourKeyVariable]: someValueArray, }

Rocket Hazmat

ES6에서는 이렇게 할 수 있습니다.

 var key = "name"; var person = {[key]:"John"}; // same as var person = {"name" : "John"} console.log(person); // should print Object { name="John"} 

 var key = "name"; var person = {[key]:"John"}; console.log(person); // should print Object { name="John"}

계산된 속성 이름이라고 하며 대괄호 표기법(대괄호) []

예: { [variableName] : someValue }

ECMAScript 2015부터 객체 이니셜라이저 구문은 계산된 속성 이름도 지원합니다. 이렇게 하면 속성 이름으로 계산되고 사용되는 대괄호 [] 안에 표현식을 넣을 수 있습니다.

ES5의 경우 다음과 같이 시도하십시오.

 var yourObject = {}; yourObject[yourKey] = "yourValue"; console.log(yourObject );

예시:

 var person = {}; var key = "name"; person[key] /* this is same as person.name */ = "John"; console.log(person); // should print Object { name="John"} 

 var person = {}; var key = "name"; person[key] /* this is same as person.name */ = "John"; console.log(person); // should print Object { name="John"}


kiranvj

출처 : http:www.stackoverflow.com/questions/11508463/javascript-set-object-key-by-variable

반응형