var newlist = list.slice( 0, pos ).concat( tasks ).concat( list.slice( pos ) );
这让我只是看着它不寒而栗。
var newlist = list.slice( 0, pos ).concat( tasks ).concat( list.slice( pos ) );
这让我只是看着它不寒而栗。
Array有一个拼接方法。
如果您不想修改原始数组,可以像这样缩短您的数组:
var newlist = list.slice(0,pos).concat(tasks,list.slice(pos));
您的方法与任何方法一样好 - 您必须单独拼接第二个数组的每个成员。
var list=[1,2,3,4,5,6,7,8,9], tasks= ['a','b','c'], pos=3;
while(tasks.length ) list.splice(pos,0,tasks.pop());
警报(list.join('\n'))
/* returned value:
1
2
3
a
b
c
4
5
6
7
8
9
*/