JavaScript数组的快速克隆

JavaScript中对变量的操作都是通过引用方式,而对数组也一样。
前两天想要对一个数组进行复制,一直苦于找不到办法(遍历的方法俺是绝对不采用的),最后到blueidea上发问,得到的方法还是好麻烦……

无意中拿起《JavaScript权威指南》翻了翻数组的操作函数,发现了slice()函数。

slice()原来是用来截取数组中的一部分,这里我用它来复制数组,它的格式如下:
array.slice(start, end)
如果省略了end参数,则切分的数组包含从start开始到数组结束的所有元素。

现在要用它来复制数组,就一行,呵呵:
var newArray=oldArray.slice(0);

小小意思,不成敬意,要是你觉得它好用的话就拿去用吧 🙂

— EOF —

27 thoughts on “JavaScript数组的快速克隆”

  1. <script type="text/javascript">
    var a = [1,2,3];
    var b = a.slice(0);
    a[0] = 4;
    alert(a); // [4,2,3]
    alert(b); // [1,2,3]
    </script>

    我试了,结果不是引用,谢谢!

发表评论

电子邮件地址不会被公开。 必填项已用*标注