Lua: Как узнать, является ли элемент таблицей вместо строки/числа?

Как гласит название, какую функцию или проверку я могу сделать, чтобы узнать, является ли элемент lua таблицей или нет?

local elem = {['1'] = test, ['2'] = testtwo}
if (elem is table?) // <== should return true

Ответ 1

print(type(elem)) -->table

функция типа в Lua возвращает тот тип данных, в котором он первый параметр (строка)

Ответ 2

В контексте исходного вопроса

local elem = {['1'] = test, ['2'] = testtwo}
if (type(elem) == "table") then
  -- do stuff
else
  -- do other stuff instead
end

Надеюсь, что это поможет.

Ответ 3

Вы можете найти, что это помогает читаемости:

local function istable(t) return type(t) == 'table' end

Ответ 4

Используйте type():

local elem = {1,2,3}
print(type(elem) == "table")
-- true