我有如下的数组:
const one = [
{id: 1, field1: "a"},
{id: 2, field1: "b"},
{id: 3, field1: "c"},
{id: 4, field1: "d"}
]
const two = [
{id: 4, field2: "4"},
{id: 1, field2: "1"}
]
// what I want to achieve:
const result = [
{id: 1, field1: "a", field2: "1"},
{id: 4, field1: "d", field2: "4"}
]
我想要合并one和two数组,得到结果。这与SQL join非常相似,但我想在JavaScript代码中完成所有操作。请注意:
- 这是通过"id"列进行"join"的。
- 结果的顺序是"one"数组的顺序(按ID排序只是巧合)
- 结果包含来自两个数组的字段
有没有更简洁的方法来实现这一点?我正在使用lodash,希望能够在其中找到一个函数来使这个过程更容易,但我还没有找到任何函数。
field1
和field2
? - undefined