0

Что ему, черт побери, не так?

То, что программа не выполняется как следует, так черт уже с ним, значит, недостаточно я еще хорош, чтобы написать даже столь простую вещь. Но, в браузере оно хотя бы выглядит по-человечески и данные генерируются. Здесь же и интерфейс не работает, и данные не генерирует. Что ему, черт побери, не так? Я горю просто, я не знаю. https://code.sololearn.com/WGktMO0RvY7a/?ref=app

18th Nov 2017, 2:16 PM
Bogdan Saliuk
Bogdan Saliuk - avatar
5 Answers
+ 1
Строка 48-53. Ссылаешься на еще несуществующий обьект, т.к. страница еще не загрузилась. Обьяви переменые глобально, а потом присваивай им обьекты когда страница загружена window.onload = function(){ out_arg_1 = document.get.........}
18th Nov 2017, 3:43 PM
Alexander Strebchuk
Alexander Strebchuk - avatar
+ 1
Вот ваш работающий код, забыли про функцию math(), которая выполнялась до загрузки; https://code.sololearn.com/Wg4nMI8bmn1R
18th Nov 2017, 4:25 PM
Alexander Strebchuk
Alexander Strebchuk - avatar
+ 1
Таки запустилось :) Осталось разобраться с логикой. Не знаю, заметили вы проблему с ответом примера: ответ считается с других случайных чисел и, вполне вероятно, что и действие между ними тоже другое случайное. Вообще, странно это, конечно. И еще, я попробовал вывести в консоль значение этого самого "action", который должен добываться из массива (function Action() { var arrAction = ['+', '-', '*', '/',]; var randomAction = Math.floor(Math.random() * arrAction.length); return action = arrAction[randomAction]; } и в ответ возвращает вовсе не одно значение.
18th Nov 2017, 4:40 PM
Bogdan Saliuk
Bogdan Saliuk - avatar
0
не думаю, что это так, ведь скрипт должен выполняться после загрузки страницы. Однако, я все равно сделал по вашему и рекции это не возымело. В десктопной версии соло ругается на функцию out(), а именно .innerHTML, мол переменные не определены. "Uncaught TypeError: Cannot set property 'innerHTML' of undefined"
18th Nov 2017, 4:02 PM
Bogdan Saliuk
Bogdan Saliuk - avatar