2012-08-24 21 views
7

Estoy tratando de entender la diferencia entre $ .each y ko.utils.arrayForEach, ¿hay algo más que una serie de iteraciones?

Estoy usando ko.utils.arrayForEach porque estoy trabajando con knockout js pero solo tengo curiosidad.

+2

¿Leyó la documentación correspondiente? –

+0

Para ser justos, no está muy claro cuál es la diferencia entre los dos en la documentación de Knockoutjs. Encontré esto, que es una publicación dada por alguien que es un experto en KO. https://groups.google.com/forum/#!msg/knockoutjs/Ep85EFQLSPs/0FpB2ubftvYJ Parece que no hay mucha diferencia. –

+0

Tampoco esta página realmente indica cuál es la diferencia: http://www.knockmeout.net/2011/04/utility-functions-in-knockoutjs.html –

Respuesta

14

ko.utils.arrayForEach no depende de jQuery y es simplemente un atajo para escribir algo como:

for (var i = 0, j = myArray.length; i < j; i++) { 
    someMethod(myArray[i]); 
} 

Sólo funciona con matrices. jQuery no es una dependencia estricta de Knockout. Si está disponible, hay un par de lugares donde Knockout lo usará (cadena para análisis DOM y manejo de eventos).

$.each requiere jQuery (obviamente) y está destinado a ser mucho más flexible. Puede iterar sobre propiedades en un objeto, así como en matrices y trabajar con objetos jQuery. También le da un índice mientras está bucleando.

Cuestiones relacionadas