2012-06-05 18 views
8

Mam obiekt słownika javascript, który ma wstępnie ustawione klucze, które są domyślnie ustawione na 0. Następnie muszę przejrzeć elementy tego słownika przez indeks i użyć wartości klucza, aby ustawić jego wartość. Poniżej jest mój kod, aby ułatwić zrozumienie:Uzyskaj kluczową wartość słownika według indeksu w 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); 
     } 
    } 

Innymi słowy, załóżmy, że mamy do czynienia z C#, chcę, aby uzyskać KeyValuePair w określonym indeksie, a następnie uzyskać dostęp do jego Key i Value właściwości.

Wszelkie sugestie?

+0

Przedmioty nie mają zleceń indeks w JavaScripcie, więc 'length' nie będzie dostępna, jeśli nie używać zamiast' Array' . – David

Odpowiedz

7

Dla obiektu _map należy użyć for .. in.

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

Można również użyć $.each tak

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

Working Fiddle

Powiązane problemy