object.assign 是浅、深拷贝的问题

let srcobj={
	'name':'zhuzhu',
	'age':18,
	 'grade':{
	 	'one':'1111',
	 	'two':'2222'
	 }
}

let copyobj=Object.assign({},srcobj)

copyobj.age='123'
console.log(copyobj.age + "~~~~"+srcobj.age) //123 ~~~ 18

copyobj.grade.one = '3333',
console.log(srcobj.grade.one +"~~~~~"+copyobj.grade.one) //333 ~~~ 333

//结论 Object.assign只能深拷贝第一层 基本类型的数据。 不能拷贝第二层数据

猜你喜欢

转载自blog.csdn.net/meetlunay/article/details/92798785