object.ts 615 B

123456789101112131415161718
  1. // TODO @puhui999:这个方法,可以考虑放到 index.js
  2. /**
  3. * 将值复制到目标对象,且以目标对象属性为准,例:target: {a:1} source:{a:2,b:3} 结果为:{a:2}
  4. * @param target 目标对象
  5. * @param source 源对象
  6. */
  7. export const copyValueToTarget = (target, source) => {
  8. const newObj = Object.assign({}, target, source)
  9. // 删除多余属性
  10. Object.keys(newObj).forEach((key) => {
  11. // 如果不是target中的属性则删除
  12. if (Object.keys(target).indexOf(key) === -1) {
  13. delete newObj[key]
  14. }
  15. })
  16. // 更新目标对象值
  17. Object.assign(target, newObj)
  18. }