UNPKG

z-utils-ts

Version:

使用TypeScript编写的工具函数库

24 lines (21 loc) 673 B
interface IJoinedData { [key: string]: any; } export function associativeArray(arr1: IJoinedData[], arr2: IJoinedData[], key1: string, key2: string, prefixKey = '$'): IJoinedData[] { let arr2Map: IJoinedData = {}; for (let i = 0; i < arr2.length; i++) { arr2Map[arr2[i][key2]] = arr2[i]; } let result = arr1.map((item) => { let newItem = item; let user = arr2Map[item[key1]]; if(user) { for(let key in user) { if(key === key2) continue; newItem[prefixKey + key] = user[key]; } } return newItem; }); return result; }