web-dev-qa-db-ja.com

Lua:要素が文字列/数値ではなくテーブルであるかどうかを確認するにはどうすればよいですか?

タイトルが示すように、lua要素がテーブルであるかどうかを確認するためにどのような関数またはチェックを実行できますか?

local elem = {['1'] = test, ['2'] = testtwo}
if (elem is table?) // <== should return true
14
unwise guy
print(type(elem)) -->table

luaのtype関数は、最初のパラメーターがどのデータ型であるかを返します(文字列)

31
Nathan

元の質問のコンテキストでは、

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

お役に立てれば。

18
Hugh

これが読みやすさに役立つことがあります。

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

type()を使用します:

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