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

549
Views
¿Cuál es la diferencia entre claves(), valores(), entradas() y Symbol.iterator?

Hay objetos iterables y no iterables en JS. Si el objeto contiene la función Symbol.iterator() entonces es iterable. Si el objeto no contiene esta función, entonces no es iterable. ¿Por qué? Esta función devuelve el objeto iterador.

La fuente

El conocido símbolo Symbol.iterator especifica el iterador predeterminado para un objeto. Utilizado por para... de.

Está bien. Pero hay otras funciones: keys() , values() , entries() . Estas funciones también devuelven iterador. ¿Cuál es la diferencia entre estos métodos y la función Symbol.iterator() ?

Resulta que ambos métodos están en prototipo.

ingrese la descripción de la imagen aquí

Entonces, ¿cuál es la diferencia entre keys() , values() , entries() y Symbol.iterator() ? Parece que ambos devuelven objetos iteradores.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Las propiedades como entries , las keys y los values están ahí para su comodidad. Permiten una fácil iteración sobre el contenido de la instancia del Mapa. Tenga en cuenta también en la imagen que publicó que entries también son el valor de la propiedad Symbol.iterator .

La propiedad Symbol.iterator está presente para que código como

 for (entry of someMap)

se comportará igual que

 for (entry of someMap.entries())

Los .keys() y .values() permiten iterar sobre una parte de la instancia del Mapa u otra, en situaciones en las que solo se preocupan por las claves, o solo por los valores. Claramente .entries() también permitiría eso, a través de la asignación de deconstrucción o la indexación de matriz simple.

En última instancia, a menudo no hay respuestas fundamentales satisfactorias a preguntas como "¿por qué el lenguaje x hace esto?" o "¿por qué API x hace esto?" porque son cosas diseñadas por personas que tenían sus propias razones.

about 4 years ago · Juan Pablo Isaza 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!