Функции могут получать параметры, выполнять заданный код и возвращать значение обратно, в то место, где они были вызваны. Функции обозначаются ключевым словом function и имеют имя, которое не должно совпадать с зарезервированными ключевыми словам и не начинается с цифры. Завершается функция ключевым словом end, как показано в примере ниже.
function sum(a, b)
return a+b;
end
Здесь функция с именем sum имеет два параметра a и b, которые складываются и возвращаются обратно. Чтобы вызвать нашу функцию, мы пишем её имя и присваиваем результат какой-то переменной или выводим функцию напрямую.
res = sum(3, 7);
print (res);
print(sum(10, 12));
В данном примере результат выполнения функции присваивается переменной res, которая затем выводится на экран. В последней строке мы сразу же выводим результат функции на экран.
Функция не обязательно должна иметь параметры, можно обойтись и без них. Также функция не обязана возвращать какое-либо значение.
function loop()
for i=1,5 do
print (i);
end
end
В данном примере внутри функции применяется цикл, который выводит на экран цифры от 1 до 5.
Как правило, функция пишется ниже основного кода.