API Reference > @easyops-cn/brick-next-pipes > mergeArrayByKey
mergeArrayByKey() function
将多个对象数组根据键合并为一个数组, 对于数组类型的属性不会 deep merge, 只会 concat。
Array
Signature:
export declare function mergeArrayByKey(
dataList: unknown[][],
key: string
): unknown[];
Parameters
| Parameter | Type | Description |
|---|---|---|
| dataList | unknown[][] | 所有需要合并的对象数组 |
| key | string | 属性名(或迭代器)。 |
Returns:
unknown[]
根据 key 合并后的数组。
Example
const dataList = [
[
{ id: 1, a: "sai" },
{ id: 2, a: "King" },
],
[
{ id: 1, b: 23 },
{ id: 3, b: 24 },
],
];
mergeArrayByKey(dataList, "id");
// Returns `[
// {id:1,a:"sai",b:23},
// {id:2,a:"King"},
// {id:3,b:24},
// ]`
const dataList2 = [
[{ id: 1, data: [{ user: "barney" }, { user: "fred" }] }],
[{ id: 1, data: [{ age: 36 }, { age: 40 }] }],
];
mergeArrayByKey(dataList, "id");
// Returns `[
// {id: 1, data: [{ 'user': 'barney' }, { 'user': 'fred' }, { 'age': 36 }, { 'age': 40 }] },
// ]`