@Fox said in Ошибка при запуске функции Main в веб интерфейсе:
Переместите все действия из функции Main в любую созданную вами функцию и всё
Да, так и сделал. Просто меня это чуть обескуражило. Спасибо
Все разобрался не знал, что с асинхронными функциями нельзя использовать обычный if и циклы for, while. for заменил на _do и все как надо работает
_do(function () {
if (_iterator() > 3) {
_break();
}
http_client_get2('https://ya.ru',{method:("GET"),headers:("")})!
SAVED_CONTENT= http_client_encoded_content("auto");
log(_iterator())
})!
log('Конец цикла');
Еще столкнулся с одной бедой. Переменные которые до циклов определяю. Например
var test='10'; В циклах потом не видны ReferenceError: Can't find variable.
@bigorat Такая то да работает, а если возможность js переменные использовать?
Просто переменные больше нигде использоваться не будут, а скрипт и так огромный с множеством переменных и не хочется без необходимости их плодить.
@Denis_krsk
Объявление с var - это локальная переменная. У нее ограниченая область видимости.
Объявляйте просто без var. Ну и по неписанным правилам програмированния глобальные переменные всегда пишутся в верхнем регистре.
Пример
TEST = 'Текст'
//В другом блоке выполнить код
log(TEST)
@DrPrime Читал, что как раз наоборот var задает глобальную переменную, а локальную создает let. И что в JS большими буквами принято называть константы.
А в новом стандарте JS (при использовании директивы 'use strict') var обязательно.
Но все таки решил попробовать и
не работает TEST = 'Текст', только так VAR_TEST = 'Текст'. Видимо одному @support известно как тут можно поступить :)
Видимо не по JS ^)
@Denis_krsk
https://learn.javascript.ru/function-basics
Обьявляя с var - они видны только в рамках одной функции, тоесть в выполнить код.
В следующем блоке они будут не видны.
В бас используется интерпретатор js от qt, который еще впроде не поддерживает новые стандарты с фишками с типом данных в переменных и т.д.