Переменные и функции
Ru | En
Как работать с переменными
Переменные в Drakon.Tech — это обычные JavaScript-переменные. Используйте переменные как обычно за одним исключением: не объявляйте их. Drakon.Tech объявит переменные автоматически.
Начинаем с создания модуля.
Теперь созданим функцию main и назначим её на export. Эта функция будет вызвана, когда браузер запустит приложение.
Напишем немного кода на JavaScript. Сложим 2 и 3 и положим результат в переменную x. Выведем значение x в консоль.
Как вы заметили, мы не объявили переменную x, да это и не нужно. Drakon.Tech объявит переменные автоматически. Более того, Drakon.Tech запрещает ключевые слова var, let и const. Если мы напишем var и попытаемся собрать модуль, Drakon.Tech выдаст ошибку.
Создадим приложение и добавим модуль в приложение. Потом сгенерируем код для приложения.
Запускаем приложение в браузере и открываем консоль. Консоль покажет нам 5, что и ожидалось.
Откроем исходный код. Drakon.Tech сгенерировал и вызвал функцию main. Функция main содержит код и объявление локальной переменной.
function main() { var x; x = 2 + 3; console.log(x); }
Как вызывать функции
В Drakon.Tech функции вызываются изнутри других функций точно так же, как и в обычном JavaScript.
Добавим другое выражение. В этот раз мы вызываем функцию add для выполнения сложения.
Создадим эту функцию add. add принимает два аргумента, назовём их left и right. Чтобы объявить аргументы в функции, щёлкните правой кнопкой мыши на заголовке функции и выберите "Свойства". Потом добавьте аргументы, одна строка — один аргумент. Теперь можно написать тело функции.
Сгенерим код для модуля, добавим модуль в приложение и запустим приложение.
Консоль покажет 5, в соответствии с функцией main.
5
Если мы откроем исходный код, мы увидим, что Drakon.Tech сгенерировал эту новую функцию add.
function add(left, right) { return left + right; }
Переменная unit
Drakon.Tech автоматически создаёт переменную unit. Переменная unit доступна во всех функциях. unit — это ссылка на текущий экземпляр данного модуля.
В принципе, можно создать несколько экземпляров модуля, но по умолчанию приложение создаёт один экземпляр для каждого модуля.
Не присваивайте значения переменной unit.
В переменной unit можно хранить глобальные значения. Эти значения будут глобальными только внутри данного экземпляра модуля.
unit.globalValueOne = 42; unit.globalValueTwo = "Hello global";