2013-02-01 2 views
0

나는 초기화에 해시 테이블의 키로 field.name 사용하고자하지만 난 없다는 오류 얻을 : 나는초기화에 해시 테이블 키로 필드 이름을 사용하는 방법, 자바 스크립트?

var field1 = document.getElementById("PRES_BK_LANG"); 
var field2 = document.getElementById("PRES_BK_CORR_MED"); 
var fields = {field1.name:[field1,"P"],field2.name:[field2,"O"]}; 

이 수행 할 수 있습니다 시도하는 방법을 여기에, 초기화 라인에 행방 불명입니다 "" ?

아이디어가 있으십니까?

답변

2

아니요, 객체 이름을 나타내는 표기법은 속성 이름이 하드 코드 된 경우에만 사용할 수 있습니다. 개체를지도로 사용하여 데이터를 저장해야합니다.

var fields = {}; 
fields[field1.name] = [field1,"P"]; 
fields[field2.name] = [field2,"O"]; 
1

대신이 코드를 써야합니다.

var fields = {}; 
fields[field1.name] = [field1,"P"]; 
fields[field2.name] = [field2,"O"]; 

이유는 (당신이 무엇을 쓸) 오브젝트 구조의이 종류 대신 실제 문자열로 해결 리터럴 문자열로 "키"를 취급합니다.

관련 문제