| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- // 集合
- interface ObjType {
- [key: string]: any;
- }
- /**
- * 多个对象合并相同的属性
- * @param a 合并之后的对象
- * @param b 把相同的属性的value 值赋值给a对象
- */
- export function mergeObj(a: ObjType, ...rest: ObjType[]): void {
- Object.keys(a).forEach((key) => {
- rest.forEach((param) => {
- if (Reflect.has(param, key)) {
- a[key] = param[key];
- }
- });
- });
- }
- /**
- * 合并两个对象
- * @param a
- * @param b
- * @param callBack
- */
- export function mergeTwoObj(a: any, b: any, callBack?: Function) {
- const obj: ObjType = {};
- Object.keys(a).forEach((el) => {
- const key = el.toLocaleLowerCase();
- if (Reflect.has(b, key)) {
- obj[el] = b[key];
- } else {
- console.warn(`为找到对应的key:${key}`);
- callBack && callBack(el)
- }
- });
- Object.assign(a, obj);
- }
|