跳至主要内容

merge 函数

merge 接受任意数量的映射或对象,并返回一个包含来自所有参数的合并元素集的单个映射或对象。

如果多个给定的映射或对象定义了相同的键或属性,则参数序列中较后的那个优先。如果参数类型不匹配,则结果类型将是一个对象,其类型结构与应用合并规则后的属性类型结构匹配。

示例

代码块
> merge({a="b", c="d"}, {e="f", c="z"})
{
"a" = "b"
"c" = "z"
"e" = "f"
}
代码块
> merge({a="b"}, {a=[1,2], c="z"}, {d=3})
{
"a" = [
1,
2,
]
"c" = "z"
"d" = 3
}

以下示例使用扩展符号 (...) 将值转换为单独的参数。有关详细信息,请参阅 扩展函数参数

代码块
> merge([{a="b", c="d"}, {}, {e="f", c="z"}]...)
{
"a" = "b"
"c" = "z"
"e" = "f"
}