一.场景 在js中一个对象(Object)或者是一个数组(Array)在复制的过程中往往不是特别的简单,一般情况下我们会直接将其赋值给另外一个变量名下,就像这样: var a = [1,2,3]; var b = a; b.push(4); console.log(a); // [1,2,3,4] 但是很显然这样的话,只是把原来的数组引用了,实际上两个变量下用的还是同一个数组,所以如果我们想复制出来一个新的数组的话就不能这样,对象也是一样: 二.关于数组(Array) 对于数组来说要想复制一个新