2012-09-21 17 views
5

tengo una enumeración definida en Javascript, como a continuación:

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

Quiero correr en este $.each() y compara con los valores de alguna otra fuente de datos. ¿Puede alguien ayudarme en esto?

Respuesta

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

editar este código con sus necesidades, en lugar de alerta puso comparar o cualquier otra cosa que hay que hacer con las claves y valores

+0

Eso es exactamente lo que necesitaba. Buscando esto desde la mañana. Muchas gracias 'dividir por cero'. ¡Deberías 'multiplicar por 100' en realidad! :) – guravman

+0

También me gustaría aquí de usted en esta 'división por cero': Tengo curiosidad por saber cuál debería ser el preferido? ¿El que tiene Javascript o JQuery ... en términos de velocidad? ¿O serán iguales ya que Enum es más pequeño aquí? – guravman

+0

usa '.each' porque el código es más elegante. No creo que haya ninguna diferencia de velocidad en ambos enfoques, porque 'enum' es un objeto muy pequeño. También haces el lío con el enfoque definiendo otra variable y luego iterando, ¿por qué deberías? Mi ejemplo funciona sin redefinir y esto debería salvar la memoria del usuario, ya que JS/jQuery son scripts del lado del cliente. –

1

Prueba este

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

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

Comprobar FIDDLE

3

Es es necesario que use $ .each()? Si el objetivo es recorrerlos, simplemente puede usar for en un bucle como este:

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

Gracias Mrinal.This también está funcionando! A pesar de que mi propósito está cumplido, tengo curiosidad por saber cuál debería ser el preferido. ¿El que tiene Javascript o JQuery ... en términos de velocidad? ¿O serán iguales ya que Enum es más pequeño aquí? – guravman

+0

ver la diferencia básica b/w ellos es que usa js puro y $ .each usará jquery. nada más. Entonces, si incluye jquery solo para usar $ .each, recomendaría el método anterior. jquery simplifica muchas cosas, pero viene con un poco de sobrecarga. Js puro siempre será más rápido. – beNerd