Lua table 按键功能变化 return
Lua table keys changes in function return
似乎当我从函数中 return 一个 table 时,我丢失了它们的键。不确定 Lua 是否应该这样运作。
例如
function main()
local someTable = {}
someTable["foo"] = "bar"
print(someTable["foo"])
return someTable
end
local test = main()
print(test["foo"])
for k, v in pairs(test) do
print(k, v)
end
bar
nil
1 bar
您的代码没有问题,并且在标准 Lua 环境(如 Lua Online Demo.
中显示了预期的行为
bar
bar
foo
bar
因此,您 运行 脚本所处的环境存在问题,或者您在此处发布的代码与您 运行 在我们机器上的代码之间存在差异.
似乎当我从函数中 return 一个 table 时,我丢失了它们的键。不确定 Lua 是否应该这样运作。
例如
function main()
local someTable = {}
someTable["foo"] = "bar"
print(someTable["foo"])
return someTable
end
local test = main()
print(test["foo"])
for k, v in pairs(test) do
print(k, v)
end
bar
nil
1 bar
您的代码没有问题,并且在标准 Lua 环境(如 Lua Online Demo.
中显示了预期的行为 bar
bar
foo
bar
因此,您 运行 脚本所处的环境存在问题,或者您在此处发布的代码与您 运行 在我们机器上的代码之间存在差异.