在写代码过程中,经常遇到对象赋值的情况。此文章记录一下对象之间赋值的几种方式。
一:给对象中的相同属性赋值
Object.keys获取所有对象的key再遍历赋值
obj = {
age : 18,
sex : '男'
}
obj1 = {
age : '',
sex : ''
}
Object.keys(obj1).forEach(key=>{obj1[key]=obj[key]})
通过for循环进行赋值
obj = {
age : 18,
sex : '男'
}
obj1 = {
age : '',
sex : ''
}
for(let k in obj){
this.obj[k] = obj1[k];
}
浅复制Object.assign
注意:如果两个对象属性不一样,源对象多余的属性也会被复制到obj目标对象中
obj = {
age : 18,
sex : '男'
}
obj1 = {
age : '',
sex : ''
}
Object.assign(obj,obj1);
解构赋值
剔除差异属性:假设targetObj有a、b、c、d四个属性,originObj有a、b、c三个属性
let {d, ...targetObj} = originObj