我正在使用lodash及其联合功能。但是,当我在联合体内使用扩展运算符时,我不再能获得正常的预期结果。我在做什么错,为什么lodash无法与点差运算符一起工作?谢谢!
x = [1, 2, 3, 4]
y = [3, 5]
normalResult = _.union(x, y)
unexpectedResult = _.union(...x, y)
// normalResult = [1, 2, 3, 4, 5]
// unexpectedResult = [3, 5]
答案 0 :(得分:1)
_.union
期望每个参数都是一个数组。当您使用...x
时,会将数组扩展为单独的参数,这不是它想要的。
如果您有一个二维数组,并且想将每个包含的数组与_.union
合并,例如,
x = [1, 2, 3, 4]
y = [3, 5]
a = [x, y];
result = _.union(...a);