• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

177
Vistas
¿Por qué la variable const localQuotes no está definida en este generador de cotizaciones aleatorias?

El problema se explica más claramente aquí: estoy creando un generador de cotizaciones aleatorias simple usando JavaScript. Tengo cientos de comillas en una matriz en un archivo llamado "quotes.js" y luego la función real para que funcione en un archivo llamado "script.js" que están vinculados a una página "index.html". Recibo el error en mi página "script.js", que se supone que permite obtener una cita aleatoria de la matriz en quotes.js y mostrar esa cita aleatoria en la pantalla con cada actualización de la página (vería el cita en la consola y no en la página real todavía). ¿Alguien puede explicarme por qué recibo este error y cómo definir la variable localQuotes?

Este es el error que recibo en la pestaña Consola de herramientas para desarrolladores en Chrome:

ingrese la descripción de la imagen aquí

Error de referencia no capturado: localQuotes no está definido en newQuote (script.js:3) en script.js:7 newQuote @ script.js:3 (anónimo) @ script.js:7

Aquí está mi código de script.js:

 function newQuote() { const quote = localQuotes[Math.floor(Math.random() * localQuotes.length)]; console.log(quote); } newQuote();

Aquí hay una versión más corta de la matriz en quotes.js:

 const localQuotes = [ { text: 'The greatest remedy for anger is delay.', author: 'Seneca', }, { text: 'Growth itself contains the germ of happiness.', author: 'Pearl Buck', }, { text: "You can do what's reasonable or you can decide what's possible.", author: null, }, ];

Y finalmente mi JavaScript vinculado en el archivo html:

 <!-- Script --> <script>src="quotes.js"</script> <script src="script.js"></script>

almost 3 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Su quotes.js deberá otorgar acceso global a la variable para que funcione. Así es como debes hacerlo:

 window.localQuotes = {...}

Ah, y su etiqueta de secuencia de comandos es incorrecta, tiene un error tipográfico allí, esperaba que fuera un error tipográfico al escribir la pregunta, así que si aún no funciona, corrija ese error tipográfico.

almost 3 years ago · Juan Pablo Isaza Denunciar

0

Me lo imaginé. Estaba en las etiquetas html.

En vez de:

 <script>src="quotes.js"</script> <script>src="script.js"</script>

Necesita ser:

 <script src="quotes.js"></script> <script src="script.js"></script>

¡RESUELTO!

almost 3 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda