Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

297
Views
¿Se debe usar for-of o forEach al iterar a través de una matriz?

Además, ¿es esta una pregunta de estilo o una pregunta funcional? ¿Es una cuestión de preferencia o es mejor? Estoy tratando de entender el propósito de for-of.

Usualmente uso,

 let iterable = [10, 20, 30]; iterable.forEach((val) => { console.log(val); })

Pero veo que esta nueva sintaxis está disponible.

 let iterable = [10, 20, 30]; for (let value of iterable) { console.log(value); }

¿Se puede proporcionar un ejemplo de un mejor caso de uso para for-of que pueda iluminar cuándo se debe usar?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Recomiendo usar siempre for … of en ES6.

  • Funciona en cualquier iterable.
  • Admite todo tipo de flujo de control en el cuerpo del ciclo, como continue , break , return , yield y await .

También personalmente lo encuentro más legible, pero eso se reduce a la preferencia. Algunas personas piensan que forEach es un estilo más funcional, pero eso es incorrecto: no tiene valor de resultado y se trata de hacer efectos secundarios, por lo que un bucle de aspecto imperativo se ajusta mejor a ese propósito.

El rendimiento no es una preocupación, en los motores modernos todos los estilos de bucle son equivalentes .

over 4 years ago · Santiago Trujillo Report

0

Esta es una pregunta muy interesante que se ha discutido en muchos otros sitios. Voy a publicar los conceptos básicos de lo que he leído.

ForEach pertenece exclusivamente a la familia real de Arrays. ¡El método forEach se introdujo con el linaje de la herencia prototípica del objeto Array! No hace falta decir que la cláusula forEach solo funciona con aquellas estructuras de datos que son matrices. El método básicamente itera sobre los elementos de la matriz y ejecuta una función de devolución de llamada [básicamente alguna función ejecutable/actividad divertida].


¡ El bucle for-of es adecuadamente nuevo en el mundo de JS y contiene superpoderes! ¡Voilaaaaaaa! El bucle for-of crea un bucle iterando sobre objetos miembro iterables. La lista es extensa como

  • Formación
  • Mapa
  • Colocar
  • Cuerda
  • Matriz tipificada
  • Otras clases del W3C

Debe saber que este chico malo surgió con el nacimiento de ES6 en 2015. Por lo tanto, ofrece mucha flexibilidad en el uso.


Actuación

En rendimiento, for...of es más rápido que forEach . Los resultados se pueden encontrar aquí

forEach es un 24% más lento que for...of


Actualizar

Hay varias otras clases iterables en la especificación W3C, como FileList, como mencioné anteriormente. Y en borradores recientes de W3C (alrededor de cuando se lanzó ES6), colecciones como HTMLCollection y NodeList ahora también implementan forEach(), no solo Array. Por @Patrick Roberts


Enlaces de origen:

  • https://codeburst.io/foreach-vs-for-of-vs-for-in-tug-of-for-d8f935396648
  • https://www.reddit.com/r/javascript/comments/4spd5b/forof_vs_foreach/
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!