Функция error()
Часть раздела Logic & Flow путешествия по Lua на Coddy — урок 32 из 54.
Иногда вашему коду необходимо немедленно остановиться, если что-то идет не так. Lua предоставляет функцию error() для обработки таких ситуаций путем вызова ошибки и остановки выполнения скрипта.
Функция error() принимает сообщение в качестве аргумента и останавливает программу, выводя это сообщение, чтобы указать, что пошло не так. Вот базовый синтаксис:
error("Something went wrong!")Это особенно полезно при проверке входных данных функции. Например, если функция ожидает положительное число, но получает отрицательное, вы можете использовать error(), чтобы предотвратить дальнейшее выполнение:
function calculateSquareRoot(num)
if num < 0 then
error("Cannot calculate square root of a negative number")
end
return math.sqrt(num)
endКогда вызывается error(), программа немедленно останавливается в этой точке и выводит ваше пользовательское сообщение об ошибке. Это помогает выявлять проблемы на ранних стадиях и четко сообщать о том, что пошло не так, делая ваш код более надежным и простым в отладке.
Шпаргалка
Функция error() останавливает выполнение программы и выводит сообщение об ошибке:
error("Something went wrong!")Типичный вариант использования — проверка входных данных функции:
function calculateSquareRoot(num)
if num < 0 then
error("Cannot calculate square root of a negative number")
end
return math.sqrt(num)
endПри вызове error() выполнение программы немедленно прекращается и выводится пользовательское сообщение об ошибке.
Попробуйте сами
В этом уроке нет задания по программированию.
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Logic & Flow
1Продвинутая итерация таблиц
Итерация с помощью pairs()Итерация с помощью ipairs()pairs() против ipairs()Повторение — Лист персонажа2Дополнительные функции библиотеки table
table.concat()Создание таблиц и unpack()table.sort()Пользовательская сортировка с помощью функцийИтоги — Таблица рекордов