js数组是引用传递,你调用一次就改变了数组对象,所以要用concat方法复制一份进行更改,才不会改到原数组
数组和对象都是引用类型 , var a = [1,2]; var b = a; a.push(3); console.log(b);[1,2,3] 也就是赋值并没有复制数组,而是引用同一个数组.对象也是一样. 那么就是如何深度复制数组和对象的问题了.最常用的方法就是遍历数组.一一赋值,如果是引用类型就是递归遍历. 字符串也是引用类型,但是字符串是不可修改的,每次修改都是新建新的字符串,所以没有这个问题. 不理解的,可以说明
87,902
社区成员
224,615
社区内容
加载中
试试用AI创作助手写篇文章吧