Lua 连接所有 table 个值

Lua concate all table values

我想为 table
覆盖 __tostring 元方法 所以我使用下面的代码

st=""
for key, value in pairs(tbl)
    do
      st=st.."  "..key.." = "..value.."\n" --error here
    end

但这给了我错误 attempt to concatenate local 'value',有人能告诉我为什么吗?

您只能连接字符串或数字(Lua 转换为字符串)。

您的 table 中显然有一个既不是字符串也不是数字的元素。 因此,concat 运算符 .. 报告错误。

https://www.lua.org/manual/5.3/manual.html#3.4.6