Lua 相当于 Object.assign
Lua equivalent of Object.assign
我是 Lua 的新手(精通 JavaScript),我想将一些值分配给另一个对象内部的对象,如下所示:
grandparent.parent.member.prop1 = "val1";
grandparent.parent.member.prop2 = val2;
grandparent.parent.member.prop3 = {foo = "bar"};
但这会导致代码很长,我该怎么做才能缩短它呢?这样的东西行得通吗?
ref = grandparent.parent.member;
ref.prop1 = "val1";
更好的是,有没有像Object.assign(grandparent.parent.member, {prop1 = "val1", prop2 = val2});
之类的单行?
谢谢
你的“类似这样的东西”将完全按照你写的那样工作。你的“更好”没有内置函数,但你可以写一个:
function assign(tbl, props)
for k,v in pairs(props) do
tbl[k] = v
end
end
我是 Lua 的新手(精通 JavaScript),我想将一些值分配给另一个对象内部的对象,如下所示:
grandparent.parent.member.prop1 = "val1";
grandparent.parent.member.prop2 = val2;
grandparent.parent.member.prop3 = {foo = "bar"};
但这会导致代码很长,我该怎么做才能缩短它呢?这样的东西行得通吗?
ref = grandparent.parent.member;
ref.prop1 = "val1";
更好的是,有没有像Object.assign(grandparent.parent.member, {prop1 = "val1", prop2 = val2});
之类的单行?
谢谢
你的“类似这样的东西”将完全按照你写的那样工作。你的“更好”没有内置函数,但你可以写一个:
function assign(tbl, props)
for k,v in pairs(props) do
tbl[k] = v
end
end