将变量从 table a 复制到 table b 并保留 b 的现有键
Copy vars from table a to table b retaining b's existing keys
我正在尝试将源 table 的内容复制到目标 table,覆盖相同的密钥并完整保留不同的密钥。我搞砸了一些事情,但无法弄清楚。有人可以帮助我吗?
local source = {
version = 1,
nest = {
a = 5,
b = 1,
c = 0
},
}
local dest = {
version = 0,
doesNotChange = 9,
nest = {
a = 0,
b = 0,
c = 0,
d = "does not change"
},
}
您可以使用 generic for statement 来实现您想要的效果。
循环将遍历 sourceTable 中的所有键并将相应的值分配给 destinationTable。由于您只索引 sourceTable 的键,因此您不能覆盖具有唯一键的 destinationTable 字段,但您可以覆盖两个表中都存在的字段并添加仅存在于 sourceTable 中的新字段。
for k,v in pairs(sourceTable) do
destinationTable[k] = v
end
我正在尝试将源 table 的内容复制到目标 table,覆盖相同的密钥并完整保留不同的密钥。我搞砸了一些事情,但无法弄清楚。有人可以帮助我吗?
local source = {
version = 1,
nest = {
a = 5,
b = 1,
c = 0
},
}
local dest = {
version = 0,
doesNotChange = 9,
nest = {
a = 0,
b = 0,
c = 0,
d = "does not change"
},
}
您可以使用 generic for statement 来实现您想要的效果。
循环将遍历 sourceTable 中的所有键并将相应的值分配给 destinationTable。由于您只索引 sourceTable 的键,因此您不能覆盖具有唯一键的 destinationTable 字段,但您可以覆盖两个表中都存在的字段并添加仅存在于 sourceTable 中的新字段。
for k,v in pairs(sourceTable) do
destinationTable[k] = v
end