Object.assign(target, ...sources) 是将后者sources的全部合并到target , 有没有方法是只合并具有 target的key, target没有的key就不进行合并覆盖
Object.assign(target, ...sources) 是将后者sources的全部合并到target , 有没有方法是只合并具有 target的key, target没有的key就不进行合并覆盖
function merge(target, src) {
const result = {...target}
Object.keys(target).forEach(key => {
if (target.hasOwnProperty(key)) {
result[key] = src[key]
}
})
return result
}
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
3 回答2.1k 阅读✓ 已解决
供参考。跟
Object.assign
行为保持一致,除了函数length
不一样,这个没东西向后兼容所以不需要一致;以及没有拷贝Symbol
。