Функции

Урок по функциям в lua

Информация

Нет-нет, это не то о чём вы подумали. Это не функции клиента. Функции в lua нужны для того, чтобы не повторять один и тот же код кучу раз, а так же просто для удобства.

Функции содержат внутри себя код, а так же могут принимать аргументы.

Обычные функции

Код, создающий функцию выглядит примерно так:

function имя(аргумент, аргумент2)
    -- код внутри функции
end

Давайте на основе изученных знаний напишем функцию, которая выводит число в консоль и сверяет больше 10 оно или нет

function check(chislo)
    if chislo > 10 then
        print("Число " .. chislo .. " больше десяти.")
    else
        print("Число " .. chislo .. " меньше  десяти.")
    end
end

Если запустить этот код ничего не произойдет, потому что функцию надо вызвать. Сделать это можно следующим образом

check(11)
check(9)

В консоль выведется следующий текст:

Число 11 больше десяти.

Число 9 меньше десяти.

Так-же, как вы могли догадаться, print это тоже функция, просто она изначально была встроена в язык программирования.

Вернёмся к спискам...

На уроке по переменным я обещал, что мы ещё вернёмся к спискам - этот момент настал.

Так вот, функции тоже можно оборачивать внутрь списков. Тем самым использовать функции намного проще.

group = {
    hello_world = function()
        print("Hello, World!") -- Выведет Hello, World!
    end, -- Не забывайте ставить запятые
    
    calculate = function(a, b)
        print(a + b) -- Выведет сумму a и b
    end
}

group.calculate(2, 2) -- Выведет 4

В дальнейшем вы сможете группировать модули, их настройки и прочее внутри списков, что сделает работу с ними намного легче и улучшит понимание кода.

Функции, возвращающие значение

Функции способны возвращать значение с помощью оператора return. Рассмотрим пример.

function check(chislo)
    return chislo > 10
end

print(check(11))

Данная функция, возвращает значение true если указанное число больше 10, и false если число меньше или равно 10. Возвращать можно значение любого типа данных, будь это текст, логическое значение, число или список.

Конец

Вот мы и познакомились с функциями в lua. На этом уроки по основам языка lua заканчиваются. Далее идёт урок по использованию событий.

Last updated