Este es código de muestra. Quiero romper (o continuar) ko.util.arrayForEach knockout.¿Cómo puedo romper o continuar el arrayforeach de knockout?
ko.utils.arrayForEach(items, function (item) {
if (...) break;
if (...) continue;
}
Este es código de muestra. Quiero romper (o continuar) ko.util.arrayForEach knockout.¿Cómo puedo romper o continuar el arrayforeach de knockout?
ko.utils.arrayForEach(items, function (item) {
if (...) break;
if (...) continue;
}
Parece que no se puede. Aquí está la fuente de arrayForEach (de utils.js en la página de GitHub KO)
arrayForEach: function (array, action) {
for (var i = 0, j = array.length; i < j; i++)
action(array[i]);
},
Si tiene que romper o continuar, sólo puede rodar su propio bucle como en el código fuente de arriba.
parece que ko.utils.arrayFirst o ko.utils.arrayFilter se ajuste a sus necesidades mejor que el actual enfoque
¿Cuál es el punto de inicializar 'j'? Puedes hacer 'i
@TheMuffinMan El punto de j es, posiblemente, guardar algunos milisegundos al evitar tener que eliminar la referencia de la matriz durante cada iteración de bucle. Ver [esta pregunta de StackOverflow] (http://stackoverflow.com/questions/17989270/javascript-for-loop-performance-storing-array-length-in-a-variable). Desde el jsperf al que se hace referencia en la respuesta aceptada a esa pregunta, parece que en los navegadores modernos no hace mucha diferencia. – bmode