다음 코드는 어떻게 작동합니까?JS에서 문자열을 변수 이름으로 사용 하시겠습니까?
var x = 'name';
후 변수이었다로, 배, 내부의 값을 사용하고, 내가 그것을 이름을 수 있도록하려면, 내가 결과있을 것이다 있도록, 그것을 설정 :
var name = 'NAME';
을
가능합니까?
다음 코드는 어떻게 작동합니까?JS에서 문자열을 변수 이름으로 사용 하시겠습니까?
var x = 'name';
후 변수이었다로, 배, 내부의 값을 사용하고, 내가 그것을 이름을 수 있도록하려면, 내가 결과있을 것이다 있도록, 그것을 설정 :
var name = 'NAME';
을
가능합니까?
직접, 아니요.
var name = 'abc';
var my_object = {};
my_object[name] = 'something';
alert(my_object[name]);
I의 천국 '
var name = 'abc';
window[name] = 'something';
alert(abc);
하지만, 훨씬 더 나은 솔루션이 처리하는 자신의 개체를 사용하는 것입니다, 당신은 세계적으로 액세스 할 변수로 할당하는 window
에 할당 할 수있는 코드의 나머지 부분을 보았지만 더 나은 방법은 객체를 사용하는 것입니다.
var data = {foo: "bar"};
var x = "foo";
data[x]; //=> bar
var y = "hello";
data[y] = "panda";
data["hello"]; //=> panda
나는이 자체 포함이를하고 window
접근
보다 조금 더 깨끗하고 * 정말 * 지저분한 코드에 이르게 생각합니다. –
http://stackoverflow.com/questions/16985132/parse-a-string-as-an-object-from-data-attribute 및 http://stackoverflow.com/questions/6491463/accessing-nested-javascript와 유사합니다. -objects-with-string-key (객체와 변수 검색). –