JS中slice split和splice三者的区别

来源:互联网 发布:中信银行软件 编辑:程序博客网 时间:2024/05/22 12:01

slice
定义:接收一个或两个参数,它可以创建一个由当前数组中的一项或多项组成的新数组,注意是新数组哦~ 也就是说它不会修改原来数组的值。 

用法:slice( para1 ),会截取从para1开始的到原数组最后的部分;    

slice(para1,para2)会截取原数组的从para1开始的para2-para1个数组。 

注意:当两个参数中存在负数时,用原数组的长度加上两个负数的参数作为相应的参数来计算。

用法:array.slice(start,end)

解释:该方法是对数组进行部分截取,并返回一个数组副本;参数start是截取的开始数组索引,end参数等于你要取的最后一个字符的位置值加上1(可选)

//如果不传入参数二,那么将从参数一的索引位置开始截取,一直到数组尾var a=[1,2,3,4,5,6];var b=a.slice(0,3);  //[1,2,3]var c=a.slice(3);    //[4,5,6]


//如果两个参数中的任何一个是负数,array.length会和它们相加,试图让它们成为非负数,举例说明://当只传入一个参数,且是负数时,length会与参数相加,然后再截取var a=[1,2,3,4,5,6];var b=a.slice(-1);  //[6]

//当只传入一个参数,是负数时,并且参数的绝对值大于数组length时,会截取整个数组var a=[1,2,3,4,5,6];var b=a.slice(-6);  //[1,2,3,4,5,6]var c=a.slice(-8);  //[1,2,3,4,5,6]


//当传入两个参数一正一负时,length也会先于负数相加后,再截取var a=[1,2,3,4,5,6];var b=a.slice(2,-3);  //[3]


//当传入一个参数,大于length时,将返回一个空数组var a=[1,2,3,4,5,6];var b=a.slice(6);  //[]



split(separator,limit)

将字符串对象分割为数组

字符串对象:split(参数1,参数2)

参数1:是必须的,从某个字符开始分割

参数2:可选的,是分割的份数,省略的话,分割为无限次

var a="0123456";var b=a.split("",3);  //b=["0","1","2"]



splice()

从数组中添加或删除项目,然后返回被删除的项目,返回值是删除的元素

splice(参数1,参数2,参数3)

参数1:是必须的,从哪开始删除的下标,也可以为负,-1是最后一个元素,-2是倒数第二个元素。

参数2:是必须的,删除的个数

参数3:是可选的,在参数1的位置处,增加一个或多个项目

//举一个简单的例子var a=['a','b','c'];var b=a.splice(1,1,'e','f');  //a=['a','e','f','c'],b=['b']



原创粉丝点击