2012-06-05 6 views
8

기본값 인 0으로 사전 설정된 키가있는 자바 스크립트 사전 개체가 있습니다. 그런 다음 인덱스으로 사전의 요소를 반복하고 키 값을 사용하여 값을 설정해야합니다. 다음은 쉬운 일이 이해할 수 있도록 내 코드입니다 :jQuery에서 색인으로 사전의 키 값 가져 오기

var _map = { 
    'severity-normal': 0, 
    'severity-minimal': 0, 
    'severity-moderate': 0, 
    'severity-severe': 0, 
    'severity-highly-severe': 0 
}; 

    mapSeverities: function() { 
     for (var i = 0; i < _map.length; i++) { 
      //get the key value, ex: severity-normal, by index (which would by i) 
      var key = //retrieved key value 
      _map[key] = this.data(key); 
     } 
    } 

즉, 우리는 C#을 상대하고있는 가정, 나는 그 때, 특정 인덱스에 KeyValuePair를 얻으려면 그 KeyValue 속성에 액세스 할 수 있습니다.

제안 사항?

+0

당신이 대신'Array'을 사용하지 않는 그래서'length'을 사용할 수 없습니다, 자바 스크립트에서 인덱스 주문이없는 객체 . – David

답변

7

개체의 경우 _map의 경우 for .. in을 사용해야합니다. 또한 같은 $.each을 사용할 수 있습니다

for (var key in _map) { 
    _map[key] = this.data[key]; 
} 
28

$.each(_map, function(key, value) { 
    // key is the key 
    // value is the value 
}); 

Working Fiddle