css slice和splice

slice()方法从已有的数组中返回选定元素;

slice(start,end)
start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。

end:可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

slice(start,end)截取start(end-1)的内容。例子如下

1     var a="slience";
2     console.log(a.slice(1));//lience
3     console.log(a.slice(1,4));//lie
4     console.log(a.slice(-1));//e
5     console.log(a.slice(-4));//ence
6     console.log(a.slice(-4));//ence
7     console.log(a.slice(1,-4));//'li'
8     console.log(a.slice(1,-10));//'空字符串'    

splice方法向/从数组中添加/删除项目,然后返回被删除的项目。该方法会改变原始数组。

splice(index,howmany,item1,item2,,,,itemX)

index:必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。

howmany:必需。要删除的项目数量。如果设置为 0,则不会删除项目。

item1.item2,,,,,itemX:可选。向数组添加的新项目。

splice() 方法可删除从 index 处开始的零个或多个元素,并且用参数列表中声明的一个或多个值来替换那些被删除的元素。

如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。

    <script type="text/javascript">
    var a="slience";
    var b="sl,ie,nc,e";
    b=b.split(',');
    a=a.slice(2,5);
    b.splice(2,0,'I');
    console.log(a);//ien
    console.log(b);// ["sl", "ie", "I", "nc", "e"]
    </script>

splice只能对数组进行操作,不能对字符串进行操作,会改变数组内容,所以直接b.splice(2,0,'I');

slice可以对数组和字符串进行操作,不会改变内容所以需要写a=a.slice();

原文地址:https://www.cnblogs.com/MissBean/p/4218453.html