谈Javascript的数组操作方法(concat(),slice(),splice())

可以访问 这里 查看更多关于大数据平台建设的原创文章。

一:concat()方法可以基于当前数组中的所有项创建一个新数组。

var colors=["red","green","blue"];

var colors2=colors.concat("yellow",["black","brown"]);

alert(colors);//  red ,green ,blue

alert(colors2);  // red ,green ,blue,yellow,black,brown

二:slice()能够基于当前数组中的一个或多个项创建一个新数组。

slice()方法可以接受一或两个参数,即要返回项的起始和结束位置。

在只有一个参数的情况下,slice()方法返回从该参数指定位置开始到当前数组末尾的所有项;

如果有两个参数,该方法返回起始和结束位置之间的项,但不包括结束位置的项。

注意:slice()方法不会影响原始数组。看下面的例子:

var colors=["red","green","blue","yellow","purple"];

var colors2=colors.slice(1);

var colors3=colors.slice(1,4);

alert(colors2);  // green,blue,yellow,purple

alert(colors3);  // green,blue,yellow

三:splice()方法:这个方法很强大,有很多种用法,包括删除,插入和替换。

下面的代码展示了上述3种使用splice()方法的方式:

var colors=["red","green","blue"];

(1)删除:只需要指定两个参数:要删除的第一项的位置和要删除的项数

var removed=colors.splice(0,1);  // 删除了第一项

alert(colors);   // green, blue

alert(removed);  // red 返回的数组中只包含一项

(2)插入:

 removed=colors.splice(1,0,"yellow","orange");  //从位置1开始插入两项

alert(colors);  //  green, yellow,orange,blue

alert(removed);   //返回的是一个空数组

(3)替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需要指定三个参数:起始位置,要删除的项数和要插入的任意数量的项,插入的项数不必与删除的项数相等

removed=colors.splice(1,1,"red","purple");   //插入两项,删除一项

alert(colors);  //  green ,red, purple, orange, blue

alert(removed);  //  yellow    返回的数组中只包含一项

看完该例子,相信您对该方法有了更清晰的认识了吧。

六. 更多文章

欢迎访问 webpack 系列原创文章:

关注微信公众号

欢迎大家关注我的微信公众号阅读 更多 原创文章:

just think and do it
原文地址:https://www.cnblogs.com/itdream/p/2534361.html