Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

315
Vistas
El bucle Javascript 'for of' no se resuelve correctamente en el valor

Tengo una matriz simple que estoy tratando de iterar, pero aparentemente no entiendo el bucle JavaScript 'for of'. El siguiente código devuelve exactamente lo que debería;

 const callOBJb = ['KD0NBH0BJ','W0DLKOBJ','WA0TJTOBJ']; for (let i of callOBJb) { console.log(i); }

retorno: KD0NBHOBJ W0DLKOBJ WA0TJTOBJ

Pero el siguiente código falla con; "TypeError: i.getCenter no es una función. (En 'i.getCenter()', 'i.getCenter' no está definido)" porque la variable 'i' no se resuelve en una de las anteriores.

 for (let i of callOBJb) { var Omiddle = i.getCenter(); }

Cuando escribo manualmente la variable como;

 var Middle = W0DLKOBJ.getCenter();

Funciona bien. ¿Qué es lo que no entiendo acerca de cómo debería funcionar esto? No creo que pueda usar el ForEach aquí, al menos no estoy teniendo más suerte que el for...of.

Me preguntaron cómo sería la variable resuelta para W0DLKOBJ.

 alert(JSON.stringify(KD0NBHOBJ)); {"_southWest":{"lat":39.204385,"lng":-94.60714},"_northEast":{"lat":39.20646,"lng":-94.60481}}
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Esto funciona:

 var Middle = W0DLKOBJ.getCenter();

porque esto:

 W0DLKOBJ

es diferente a esto:

 'W0DLKOBJ'

Si la matriz debe contener los valores de las variables y no los literales de cadena, no use comillas:

 const callOBJb = [KD0NBH0BJ, W0DLKOBJ, WA0TJTOBJ];
about 4 years ago · Juan Pablo Isaza Denunciar

0

La variable callOBJb es una matriz de cadenas, y cuando usa la declaración for..of para realizar una iteración de bucle, para cada elemento en su objeto iterable obtendrá el elemento en la deposición correspondiente al tiempo de ejecución del código de bloque de bucle.

En su caso, como todos los elementos en la matriz callOBJb son una cadena simple, javascript String.prototype Object no define una función llamada getCenter esa es la razón por la que está obteniendo

"TypeError: i.getCenter no es una función. (En 'i.getCenter()', 'i.getCenter' no está definido)

 let callOBJb = ['KD0NBH0BJ','W0DLKOBJ','WA0TJTOBJ']; for(let item of callOBJb){ console.log(typeof item, item); }

Como puede ver en cada iteración, el typeof item siempre es una cadena.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Volví al php y rediseñé la salida para facilitar la conversación con Javascript. Al hacer eso, pude iterar a través de los valores usando "for (let val of callOBJb)" con éxito.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda