码迷,mamicode.com
首页 > 其他好文 > 详细

slice、splice、splite区别

时间:2016-05-05 11:06:13      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:

这三个长得很像,具体功能却差很多。

slice:

定义:接收一个或两个参数,它可以创建一个由当前数组中的一项或多项组成的新数组。返回为新数组,以前的数组没有变化。

var allArray = [1,2,3,4];
var sliceArray = allArray.slice(1,2);

此时allArray还是[1,2,3,4],silceArray是[2]

splice:

一个强大的js数组操作方法,可以完成删除、插入、替换(删除+插入)功能。

arrayObject.splice(index,howmany,item1,.....,itemX),

第一个参数是删除的出发点,第二个是数量,第三个和之后的是插入的内容,从第一个参数开始的位置插入。
var all=[1,2,3,4,5,6];
all.splice(1,2,7);

splice返回删除的内容是[2,3],从数组标识1开始2位,此时输出all则是[1,7,3,4,5,6]

 

split:

var str="1-2-3-4";
var spliteStr = str.split("-");

split返回数组[1,2,3,4]

 

在阮一峰老师的文章中看到一段代码

// splice用来替换数组元素,它接受多个参数,
    // 第一个是开始替换的位置,第二个是需要替换的个数,后面就是所有新加入的元素。
    // 因为splice不接受数组作为参数,所以采用apply的写法。
    // 这一句的意思就是原来的myArray数组替换成排序后的myArray
    myArray.splice.apply(myArray, params);

myArray是原数组,第一个myArray可以改成空数组,为了使用splice方法,然后参数中的myArray是原数组,params是需要替换的数组,这个数组前两位设置成0,params原来的长度,为了当做splice的function中的前两个参数。后面的就是排过序的结果。很灵巧

slice、splice、splite区别

标签:

原文地址:http://www.cnblogs.com/web-Timer/p/5460995.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!