2012-09-21 24 views
5

Mam Enum zdefiniowane w moim JavaScript jak poniżej:

BankTypesEnum = { 
     'Savings': '0', 
     'HomeLoan': '1', 
     'Current': '2', 
     'salary': '3' 
    } 

chcę uruchomić $.each() na ten temat i porównać z wartościami z jakiegoś innego źródła danych. Czy ktoś może mi w tym pomóc?

Odpowiedz

8
$.each(BankTypesEnum , function(key, value) { 
    alert(key + ': ' + value); 
}); 

edytować ten kod ze swoich potrzeb, zamiast wpisu umieścić porównać czy cokolwiek innego trzeba zrobić z kluczami i wartości

+0

Dokładnie tego potrzebowałem. Szukanie tego od rana. Wielkie dzięki "dziel się przez zero". Powinieneś być "pomnożony przez 100"! :) – guravman

+0

Chciałbym również tutaj od ciebie na ten "podział przez zero": jestem ciekawy, który z nich powinien być preferowany? Ten z JavaScript lub JQuery ... pod względem szybkości? czy będą one takie same jak Enum jest tutaj mniejsze? – guravman

+0

użyj '.each', ponieważ kod jest bardziej elegancki. Nie sądzę, aby wystąpiły jakiekolwiek różnice prędkości w obu podejściach, ponieważ 'wyliczenie' jest bardzo małym obiektem. Również robisz bałagan z podejściem, definiując inną zmienną, a następnie powtarzając, dlaczego powinieneś? Mój przykład działa bez ponownego definiowania, a to powinno oszczędzać pamięć użytkownika, ponieważ JS/jQuery są skryptami po stronie klienta. –

1

Spróbuj

BankTypesEnum = { 
    Savings: 0, 
    HomeLoan: 1, 
    Current: 2, 
    salary: 3 
} 

$.each(BankTypesEnum, function(i, data) { 
    console.log(i + ' - ' + data) 
});​ 

Sprawdź FIDDLE

3

Czy konieczne jest użycie $ .each()? Jeśli celem jest ich przepuszczenie, możesz po prostu użyć dla tej pętli:

var earnings=BankTypesEnum; 
for(var myEarnings in earnings) 
{ 
    //do something here 
} 
+0

Dzięki Mrinal.This działa również! Mimo że mój cel jest spełniony, jestem ciekawy, który z nich powinien być preferowany? Ten z JavaScript lub JQuery ... pod względem szybkości? czy będą one takie same jak Enum jest tutaj mniejsze? – guravman

+0

Zobacz podstawową różnicę b/w nich jest to, że używa czystego js i $ .each będzie używać jquery. nic więcej. Więc jeśli dołączasz jquery tylko do używania $ .each, poleciłbym powyższą metodę. jquery upraszcza wiele rzeczy, ale jest nieco ograniczony. Pure js zawsze będzie szybszy. – beNerd

Powiązane problemy