将附加数据插入到索引处的Lua表中

时间:2018-03-13 16:34:07

标签: lua

我有一个名为" inventory"的表,初始化如下:

inventory = {}

inventory[1] = { qty = 0 }

我想在索引1处向此表添加更多数据,例如:

val = { id = "example" }

inventory[1] = inventory[1], val

有没有办法可以在此索引中保留此表中已有的数据?

最终结果应该是:

inventory[1] = { qty = 0, id = "example" }

但是如果我在尝试这段代码后尝试打印id,我会得到:

print(inventory[1].id) == Nil

2 个答案:

答案 0 :(得分:2)

inventory[1].id = "example"

inventory[1]["id"] = "example"

{p> this other SO answer first_tableinventory[1]second_tableval

FWIW,您需要在inventory[1] = inventory[1], val的表达式左侧使用2个变量才能正常工作:a, b = x, y

答案 1 :(得分:0)

您需要获取表格中的第一个键并使用它:

local inventory = {}
inventory[1] = { qty = 0 }
local val = { id = "example" }

-- 

local KeyName = next(val)

inventory[1][KeyName] = val[KeyName]

print(inventory[1][KeyName]) 
-- or 
print(inventory[1].id)