문제

JavaScript에는 객체가 있습니다.

obj = { one: "foo", two: "bar" };

자, 나는 이것을하고 싶다

var a = 'two';
if(confirm('Do you want One'))
{
  a = 'one';
}

alert(obj.a);

그러나 물론 작동하지 않습니다. 이 객체를 동적으로 참조하는 올바른 방법은 무엇입니까?

도움이 되었습니까?

해결책

짧은 대답: obj[a]

긴 답변 : obj.field 속기입니다 obj["field"], 열쇠가 공백, 점 또는 기타 불쾌한 것들이없는 일정한 문자열 인 특별한 경우. 귀하의 질문에서, 키는 일정하지 않았으므로 전체 구문을 사용하십시오.

다른 팁

이와 같이:

obj[a]

참고로, 글로벌 변수는 "창"객체에 첨부되므로

var myGlobal = 'hello';
var a = 'myGlobal';
alert(window[a] + ', ' + window.myGlobal + ', ' + myGlobal);

이것은 "안녕하세요, 안녕하세요, 안녕하세요"

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top