Значение#
nil обозначает отсутствие значения. Присваивание nil полю таблицы удаляет это поле. Возврат nil и отсутствие возвращаемых значений различаются по числу результатов.
Пример#
local function empty() end
local function one_nil() return nil end
local a = select("#", empty()) -- 0
local b = select("#", one_nil()) -- 1Что произойдёт: a = 0, b = 1. Нет результатов и один nil различаются по количеству результатов.
Этот фрагмент не печатает сообщение и не пишет его в журнал. Здесь указаны ожидаемые значения примера.