保誠-保戶業務員媒合平台
HelenHuang
2022-06-09 9bdb95c9e34cef640534e5e5a1e2225a80442000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/* eslint-disable no-param-reassign */
function isObject(obj) {
  return (
    obj !== null &&
    typeof obj === 'object' &&
    'constructor' in obj &&
    obj.constructor === Object
  );
}
 
function extend(target: any = {}, src: any = {}) {
  Object.keys(src).forEach((key) => {
    if (typeof target[key] === 'undefined') target[key] = src[key];
    else if (
      isObject(src[key]) &&
      isObject(target[key]) &&
      Object.keys(src[key]).length > 0
    ) {
      extend(target[key], src[key]);
    }
  });
}
 
export default extend;