admin管理员组

文章数量:1530056

concat、slice、splice、indexOf方法使用

一:concat方法作用?
注意:使用该方法的时候,它会创建一个当前数组的副本,然后将接受到的参数添加到该数组的末尾。

var arr1 = ['bangbang','qiqi','yanniu','linlin'];
//concat用法 ,合并多个数组
var cont1 = arr1.concat('are friends',{name:'lili'});
var cont2 = arr1.concat('are friends',[1,2]);
console.log(cont1)  //[ 'bangbang', 'qiqi', 'yanniu', 'linlin', 'are friends',{name:'lili'}]
console.log(cont2)  //[ 'bangbang', 'qiqi', 'yanniu', 'linlin', 'are friends',1,2 ]
console.log(arr1);  //原来的数组没有改变

二:slice的用法?
slice接受一个参数的时候:从起始项到末尾截取;
接受两个参数的时候:从起始项到结束项(两个参数之间)。
注意:用他操作数组的时候相当于又创建了一个新的数组再进行操作。
实例如下:

//注意,以下没有改变数组内容,而是复制了一份然后操作
var arr1 = ['bangbang','qiqi','yanniu','linlin'];
var cut1 = arr1.slice(2);  //从第3个数开始截取
var cut2 = arr1.slice(1,3);  //从第2个数开始截取,到第3个为止
console.log(cut1);  //[ 'yanniu', 'linlin' ]
console.log(cut2);  //[ 'qiqi', 'yanniu' ]
console.log(arr1);  //原来的数组没有改变

三:splice:功能最多的方法!
splice可以对数组进行删除,插入和替换操作。
看实例就明白了:

var arr1 = ['bangbang','qiqi','yanniu','linlin'];
var remove1 = arr1.splice(1,2); //删除第三个开始,长度为2的数据
console.log(arr1)       //数组改变了  [ 'bangbang', 'linlin' ]

//向数组的第1个位置插入2个数据
var remove2 = arr1.splice(1,0,'闫妞',[1,2,3]);
console.log(remove1);   //返回删除的数据,[ 'qiqi', 'yanniu' ]
console.log(remove2);   //[]s
console.log(arr1)    //数组改变了[ 'bangbang', '闫妞',[ 1, 2, 3 ], 'linlin' ]

//插入2项,删除1var remove3 = arr1.splice(1,1,'red','purple');
console.log(remove3);//[ '闫妞' ]
console.log(arr1)   //[ 'bangbang', 'red', 'purple', [ 1, 2, 3 ], 'linlin' ]

四:indexOf方法使用?
indexOf和lastIndexOf方法用来判断数组中是否存在传入的参数,并且返回该参数在数组中的位置(索引从0开始),如果没有,就返回-1。
例子如下:

var arr1 = ['bangbang','qiqi','yanniu','linlin'];
console.log(arr1.indexOf('bangbang')); //0;
console.log(arr1.lastIndexOf('bangbang');//3
console.log(arr1.indexOf(1)  //-1

本文标签: 方法sliceContactjssplice