JS数组合并的3种⽅法(concat(),push(),push.apply())标题JS 数组合并的3种⽅法(concat(),push(),push.apply())
1、使⽤concat()进⾏数组合并concat()连接两个或更多的数组,并返回结果。
var arr1=[1,2];
var arr2=[3,4,5];
var at(arr2);//[1,2,3,4,5]
注:使⽤concat()进⾏数组合并之后,需要⽤数组接收concat()返回的数组。
2、使⽤push()进⾏数组合并遍历长度最少的数组,将该数组的元素依次添加进另外⼀个数组中,放在尾部。
3.使⽤array.push.apply()进⾏数组合并函数的apply⽅法有⼀个特性,那就是obj.func.apply(obj,argv),argv是⼀个数组。
var arr1=[1,2];
var arr2=[3,4,5];
arr2.push.apply(arr2,arr1);//[1,2,3,4,5]
调⽤arr2.push这个函数实例的apply⽅法,同时把arr1当作参数传⼊,这样arr2.push这个⽅法就会遍历arr1数组的所有元素,将arr1的元素存⼊arr2数组,使arr2数组发⽣改变。
题⽬展⽰:
在数组 arr 开头添加元素 item。不要直接修改数组 arr,结果返回新的数组。
输⼊:[1,2,3,4],10
输出:[10,1,2,3,4]
//利⽤concat
function prepend(arr, item){
return[item].concat(arr);
}
//使⽤push.apply
function prepend(arr, item){
var newArr=[item];
[].push.apply(newArr, arr);
return newArr;
}
//利⽤slice+unshift/splice
function prepend(arr, item){
var newArr=arr.slice(0);
newArr.unshift(item);//newArr.splice(0,0,item);
return newArr;
}
//使⽤join+split+unshift/splice组合
function prepend(arr, item){
var newArr=arr.join().split(',');
newArr.unshift(item);//newArr.splice(0,0,item);
return newArr;
}
//普通的迭代拷贝
function prepend(arr, item){
var newArr=[];
for(var i=0;i<arr.length;i++){
newArr.push(arr[i]);
}
js合并两个数组newArr.unshift(item);
return newArr;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论