Какой наиболее эффективный способ определить, является ли таблица пустой (то есть в настоящее время не содержит значений типа массива или значений стиля dict)?
В настоящее время я использую next()
:
if not next(myTable) then
-- Table is empty
end
Есть ли более эффективный способ?
Примечание. Оператору #
здесь недостаточно, так как он работает только со значениями стиля массива в таблице. Таким образом, #{test=2}
неотличим от #{}
, потому что оба возвращают 0. Также обратите внимание, что проверка того, table nil
не хватает, поскольку я не ищу значения nil, а таблицы с 0 элементами (т.е. {}
).