slice()方法和splice方法的区别

来源:互联网 发布:作图软件有哪些 编辑:程序博客网 时间:2024/06/12 20:26

slice()方法和splice方法的区别

每次看到slice()方法和splice方法时,都会一脸懵逼。所以,不得不迫使我对它们进行些整理,相信大家也有和我一样的吧,希望这篇整理可以帮助到大家。下面先来解释下官方对于这俩方法的定义,看看它们到底是做什么的。

定义:

      两者都是对数组进行操作。
      slice()方法是可以提取数组的某个部分,并以新的字符串返回被提取的部分。这部分返回的值,即为被操作的值
      splice()方法是用于插入、删除或者替换数组的元素。即原数组不会改变。

1.slice

   用法:

   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);  //[]

2.splice

   用法:

   array.splice(separator,limit【可选】)

   解释:

   split方法把这个string分割成片段来创建一个字符串数组。可选参数limit可以限制被分割的片段数量。separator参数    可以是一个字符串或是一个正则表达式。

   注:如果separator是一个空字符,会返回一个单字符的数组。

     例    

//一个简单的例子var a="0123456";var b=a.split("",3);    //b=["0","1","2"]

      

原创粉丝点击