Te damos el arreglo a esta problema, al menos eso pensamos. Si continuas con preguntas dínoslo, que para nosotros será un placer ayudarte
Solución:
forEach
es un método en el Array
prototipo. Itera a través de cada elemento de un array y lo pasa a una función de devolución de llamada.
Así que básicamente, forEach
es un método abreviado para el caso de uso “pasar cada elemento de un array
a un function
“. Aquí hay un ejemplo común donde pienso Array.forEach
es bastante útil, en comparación con un for
círculo:
// shortcut for document.querySelectorAll
function $$(expr, con)
return Array.prototype.slice.call((con
// hide an element
function hide(el)
el.style.display = 'none';
// hide all divs via forEach
$$('div').forEach(hide);
// hide all divs via for
for (var divs = $$('div'), i = 0; i < divs.length; i++)
hide(divs[i])
Como puede ver, la legibilidad de la instrucción forEach mejora en comparación con una for
círculo.
Por otro lado, un for
declaración es más flexible: no implica necesariamente una array. El rendimiento de una normal for
loop es un poco mejor, porque no hay llamada de función para cada elemento involucrado. A pesar de esto, se recomienda evitar for
bucles cuando se puede escribir como un forEach
declaración.
en un forEach
bucle no controla la forma en que itera sobre el array. El clásico for
loop le permite elegir el algoritmo de iteración que desee (i++
; i--
; i+=2*i
etc).
Sin embargo, un forEach
loop es mucho más fácil de usar - no necesitas meterte con todos los i
contando, encontrando el array[i]
objeto: JS lo hace por usted.
>> sparseArray = [1, 2, , 4];
>> sparseArray.forEach(console.log, console);
1 0 [1, 2, 3: 4]
2 1 [1, 2, 3: 4]
4 3 [1, 2, 3: 4]
>> for(var i = 0; i < sparseArray.length; ++i) console.log(sparseArray[i]) ;
1
2
undefined
4
forEach
es una adición reciente para hacer posible el estilo expresivo de comprensión de listas en javascript. Aquí puedes ver que forEach
salta elementos que nunca se establecieronpero lo mejor que puedes hacer con un for
bucle es para comprobar undefined
o null
los cuales se pueden establecer como valores y recogidos por forEach
. A menos que espere valores faltantes, forEach
es equivalente a for
bucles, pero tenga en cuenta que no puede detenerse antes, para lo cual necesita every
.
valoraciones y comentarios
Si estás contento con lo expuesto, tienes la opción de dejar un tutorial acerca de qué le añadirías a este ensayo.