Я пытаюсь создать простое приложение, которое генерирует случайный вопрос с помощью onclick и генерирует решение указанного вопроса с другим onclick. Мне удалось создать достаточно простую функцию случайного вопроса, но у меня проблемы с решением. По сути, я не могу получить доступ к переменным, созданным с помощью функции «сгенерировать вопрос».
Следующая функция генерирует случайный вопрос: «Преобразовать 10 мг / мл в мкг / мл»
const arr = ['mg/mL', 'mcg/mL', 'mg/L'];
function genConversion () {
function clearBox(elementID){ //this resets the question
document.getElementById(elementID).innerHTML = "";
}
clearBox('output');
function shuffle(a) {
for (let i = a.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[a[i], a[j]] = [a[j], a[i]];
}
return a;
}
function randomNum() {
var number = Math.floor((Math.random() * 100) +1);
return number
}
var num = randomNum()
shuffle(arr);
output.innerHTML += "Convert " + num + ' ' + arr[0] + ' to ' + arr[1]
}
Теперь, когда я пытаюсь создать функцию, которая решит сгенерированную проблему ( фактический logi c появится, когда я смогу выяснить, как получить доступ к переменным вопроса), я не могу получить доступ к переменной 'num'. Интересно, что я могу получить доступ к элементу случайного массива arr [0].
function solveProb() {
console.log(arr[0]);
console.log(num);
}
Я уверен, что это как-то связано с областью видимости, с которой у меня проблемы, но любые советы будут оценены.