Lua:如何判断一个元素是表而不是字符串/数字?

正如标题所述,我需要进行哪些功能或检查才能找出一个 lua 元素是否是表格?

local elem = {['1'] = test, ['2'] = testtwo}
if (elem is table?) // <== 应该返回 true
点赞
用户1542101
用户1542101
Lua 中的 type 函数返回其第一个参数的数据类型(字符串)

print(type(elem)) -->table
2012-07-21 03:31:48
用户1516484
用户1516484

使用 type()

local elem = {1,2,3}
print(type(elem) == "table")
-- true
2012-07-21 03:32:06
用户798374
用户798374

你可能会发现这有助于阅读:

local function istable(t) return type(t) == 'table' end
2012-09-10 17:32:29
用户1889201
用户1889201

在原始问题的上下文中,

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

希望这有帮助。

2012-12-09 09:57:09