Estoy creando un juego de trivia y estoy usando The Open Trivia Database para generar 10 preguntas aleatorias.
Estas 10 preguntas son cadenas separadas y quiero colocarlas en una matriz para poder mostrarlas una por una (después de que el usuario adivine si es Verdadero o Falso).
Aquí está el registro de la consola de las preguntas:
Ahora esto es lo que estoy intentando: he inicializado una matriz vacía y luego, en el ciclo for, estoy insertando cada pregunta en la matriz, pero no funciona.
Esencialmente, lo que estoy tratando de lograr es que cuando el usuario haga clic en un botón verdadero o falso, se mostrará el siguiente elemento en la respuesta. Pensé que una matriz funcionaría, pero tal vez lo estoy viendo de manera incorrecta.
Cualquier ayuda es apreciada y si me perdí algo, por favor hágamelo saber. ¡Gracias de antemano!
Código:
const api_url = "https://opentdb.com/api.php?amount=10&difficulty=easy&type=boolean"; const triviaQ = document.getElementById("triviaQuestion"); const question_array = []; // this is the empty array async function getAPI(url) { const response = await fetch(url); var data = await response.json(); justQuestions(data); } function justQuestions(data) { /// loop to display all 10 questions for (let i = 0; i <= 9; i++) { display_all_questions = data.results[i].question; current_question = triviaQ.innerHTML = display_all_questions; /// the console log image let all_questions = question_array.push({ display_all_questions }); //this is where I attempt to add the questions into an array } }Primero, está creando una variable 'all_questions' en cada iteración y nunca la usa (no la necesita). En segundo lugar, el nombre 'display_all_questions' es engañoso, ya que es solo la pregunta actual.
Y finalmente, su data.results ya es la matriz que necesita, por lo que puede usarla así:
let questions_array = []; async function getAPI(url) { const response = await fetch(url); var data = await response.json(); questions_array = data.results; console.log(questions_array); }No olvide manejar posibles errores de solicitud de red