美文网首页
把一个数组赋值给另一个数组

把一个数组赋值给另一个数组

作者: 藕藕藕汀 | 来源:发表于2017-03-28 15:58 被阅读1448次
    var aArr = ["a", "b", "c"];
    var bArr = aArr;
    

    这种情况下的赋值无论是对aArr还是bArr做出操作(例如删除数组中的一个元素),都将影响另一个。

    aArr.splice(0, 1);
    alert(aArr);
    alert(bArr);
    

    如上删除aArr数组的第一个元素,两个数组的值都是["b", "c"]。
    因为数组是指向原位置的。

    解决发放是切断两个数组之间的关联用concat或者slice赋值

    var bArr = aArr.slice();
    var bArr = [].concat(aArr);
    

    相关文章

      网友评论

          本文标题:把一个数组赋值给另一个数组

          本文链接:https://www.haomeiwen.com/subject/byvjottx.html