求助最后一排输出的结果为什么是1而不是0

var arr1 = [{num: 0}];
var arr2 = [];
arr2.push(arr1[0]);
console.log(arr2[0].num);
arr1[0].num++;
**console.log(arr2[0].num);**

对于引用类型( 数组,对象),赋值并不会创建新的对象或数组,而只是引用相同的对象(数组)而已,
所以修改一处,其他地方也会被修改,
深度复制,也是面试比较喜欢的考题