时间:2021-07-01 10:21:17 帮助过:3人阅读
var arr1 = [1,2,3];
var arr1 = arr1.concat([4,5]);
那么我们有没有什么好办法来避免这个资源消耗呢?
这里可以使用Javascript原生的apply方法来实现,首先看如下代码:
代码如下:
var arr1= [1,2,3];
arr1.push.apply(arr1,[4,5]);
这样就搞定了,此方法巧妙的运用了apply方法的特性(第二个参数是数组类型的多个)解放了push方法, push方法从本身只能传递多个值变成了可以传递数组, 上述代码其实就等价于
代码如下:
arr1.push(4,5);
这样arr1还是那个arr1,只是内存进行了重写而已,没有重定向和不必要的内存溢出。