zoukankan      html  css  js  c++  java
  • slice 和 splice 的区别

    slice定义和用法

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

    语法

    arrayObject.slice(start,end)
    参数描述
    start 必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
    end 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。

    返回值

    返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

    实例

    例子 1

    在本例中,我们将创建一个新数组,然后显示从其中选取的元素:

    <script type="text/javascript">
    
    var arr = new Array(3)
    arr[0] = "George"
    arr[1] = "John"
    arr[2] = "Thomas"
    
    document.write(arr + "<br />")
    document.write(arr.slice(1) + "<br />")
    document.write(arr)
    
    </script>

    输出:

    George,John,Thomas
    John,Thomas
    George,John,Thomas

    例子 2

    在本例中,我们将创建一个新数组,然后显示从其中选取的元素:

    <script type="text/javascript">
    
    var arr = new Array(6)
    arr[0] = "George"
    arr[1] = "John"
    arr[2] = "Thomas"
    arr[3] = "James"
    arr[4] = "Adrew"
    arr[5] = "Martin"
    
    document.write(arr + "<br />")
    document.write(arr.slice(2,4) + "<br />")
    document.write(arr)
    
    </script>

    输出:

    George,John,Thomas,James,Adrew,Martin
    Thomas,James
    George,John,Thomas,James,Adrew,Martin

     

    splice定义和用法

    splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。

    注释:该方法会改变原始数组。

    语法

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

    参数

    描述

    index

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

    howmany

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

    item1, ..., itemX

    可选。向数组添加的新项目

    返回值

    类型

    描述

    Array

    包含被删除项目的新数组,如果有的话。

    说明

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

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

    请注意,splice() 方法与 slice() 方法的作用是不同的,splice()方法会直接对数组进行修改。

    实例

    例子 1

    在本例中,我们将创建一个新数组,并向其添加一个元素

    <script type="text/javascript">
     
    var arr = new Array(6)
    arr[0] = "George"
    arr[1] = "John"
    arr[2] = "Thomas"
    arr[3] = "James"
    arr[4] = "Adrew"
    arr[5] = "Martin"
     
    document.write(arr + "<br />")
    arr.splice(2,0,"William")
    document.write(arr + "<br />")
     
    </script>

    输出:

    George,John,Thomas,James,Adrew,Martin
    George,John,William,Thomas,James,Adrew,Martin
     
    个人注释:从索引位置2处开始操作,0表示添加元素,第三个参数“William”表示要添加的元素,故从索引位置2后开始添加一个元素“William

    例子 2

    在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:

    <script type="text/javascript">
     
    var arr = new Array(6)
    arr[0] = "George"
    arr[1] = "John"
    arr[2] = "Thomas"
    arr[3] = "James"
    arr[4] = "Adrew"
    arr[5] = "Martin"
     
    document.write(arr + "<br />")
    arr.splice(2,1,"William")
    document.write(arr)
     
    </script>

    输出:

    George,John,Thomas,James,Adrew,Martin
    George,John,William,James,Adrew,Martin
     
    个人注释:从索引位置2处开始操作,1表示删除元素的个数,故删除一个元素,第三个参数“William”表示要添加的元素,故从索引位置2后开始删除一个元素“Thomas”,然后再添加一个元素“William
     

    例子 3

    在本例中我们将删除从 index 2("Thomas") 开始的三个元素,并添加一个新元素("William") 来替代被删除的元素

    <script type="text/javascript">
     
    var arr = new Array(6)
    arr[0] = "George"
    arr[1] = "John"
    arr[2] = "Thomas"
    arr[3] = "James"
    arr[4] = "Adrew"
    arr[5] = "Martin"
     
    document.write(arr + "<br />")
    arr.splice(2,3,"William")
    document.write(arr)
     
    </script>

    输出:

    George,John,Thomas,James,Adrew,Martin
    George,John,William,Martin
    个人注释:从索引位置2处开始操作,3表示删除元素的个数,故删除3个元素,第三个参数“William”表示要添加的元素,故从索引位置2后开始删除3个元素“Thomas,James,Adrew”,然后再添加一个元素“William
  • 相关阅读:
    codeforces 814B An express train to reveries
    codeforces 814A An abandoned sentiment from past
    codeforces 785D D. Anton and School
    codeforces 785C Anton and Fairy Tale
    codeforces 791C Bear and Different Names
    AOP详解
    Spring集成JUnit测试
    Spring整合web开发
    IOC装配Bean(注解方式)
    IOC装配Bean(XML方式)
  • 原文地址:https://www.cnblogs.com/kongwen/p/4365033.html
Copyright © 2011-2022 走看看