精华内容
下载资源
问答
  • js截取数组的一部分
    千次阅读
    2022-06-25 10:50:38

    使用js获取数组中的元素

    面试官提问:现在有一个包含10个元素的数组,你有什么方法能够取出其中的第二个和第三个元素吗

    1、slice函数

    Array.slice(),接收两个参数,起始位置(包含起始元素),结束位置,返回一个新数组

    const arr=[1,2,3,4,5,6,7,8,9,10]

    const arr2=arr.slice(1,3)

    console.log(arr2);

    slice(1,3),从下标1的元素开始截取(包含该元素),截取到下标为3的元素(不包含该元素)

    输出:[2, 3]

    如果传入的参数为负数,截取是从后面开始的

    const arr=[1,2,3,4,5,6,7,8,9,10]

    const arr2=arr.slice(-3,-1)

    console.log(arr2);

    输出:[8,9]

    slice(-3,-1),从倒数第三个(包含该元素)开始截取,截取到倒数第一个(不包含该元素)

    2、splice函数

    该函数操作原数组,可以执行数组的删除和插入,返回一个新数组

    用作删除的时候,接收两个参数:起始下标,删除的个数;函数返回删除的元素数组

    用作插入的时候,接收两个以上参数:起始下标,删除的个数,插入的元素;函数返回删除的元素数组,插入的元素会在删除的元素的位置开始插入

    const arr=[1,2,3,4,5,6,7,8,9,10]

    const arr2=arr.splice(1,2)

    console.log(arr2);

    输出:[2,3]

    splice(1,2),从下标1开始,删除两个元素,返回以这两个元素作为元素的数组

    执行之后,原数组被改变,变为[1, 4, 5, 6, 7, 8, 9, 10]

    参数可以为负数,第一个参数为负数时,从数组后面开始删除,第二个参数依旧为删除的个数,如果第二个参数为负数,则第二个参数视为0

    const arr=[1,2,3,4,5,6,7,8,9,10]

    const arr2=arr.splice(-2,-100)

    console.log(arr2);

    输出:[]

    splice(-2,100),从倒数第二个开始,删除0个元素

    更多相关内容
  • PHP array_slice() 函数用来截取数组,也就是从数组中提取出个片段,语法如下:array array_slice ( array $arr , int $start [, int $length = NULL [, bool $preserve_keys = false ]] )参数说明:arr 表示要...

    PHP array_slice() 函数用来截取数组,也就是从数组中提取出一个片段,语法如下:

    array array_slice ( array $arr , int $start [, int $length = NULL [, bool $preserve_keys = false ]] )

    参数说明:

    arr 表示要截取的数组。

    start 表示开始截取的位置(下标):

    如果 start 为正数,则从前往后截取。

    如果 start 为负数,则从距离 arr 末端 -start 的位置开始,从后往前截取。例如 -2 意味着从数组的倒数第二个元素开始。

    length 是可选参数,表示截取长度:

    如果 length 为正数,那么表示截取的元素个数;

    如果 length 为负数,那么截取的片段将终止在距离数组末端 length 的位置;

    如果省略,那么将从 start 位置开始,一直截取到数组的末尾。

    preserve_keys 是可选参数,规定是否保留原来的键名,默认为 false,也即不保留;如果设置为 true,将保留原有的键名。

    返回值:返回截取后的子数组。

    使用示例如下:

    $info = array(2=>"C语言中文网", 4=>"http://c.biancheng.net/", "PHP", "JavaScript", "Java", "Python", "C++");

    //截取得到 ["PHP", "JavaScript", "Java", "Python", "C++"]

    print_r( array_slice($info, 2) );

    //截取得到 ["JavaScript", "Java", "Python"]

    print_r( array_slice($info, -2, 3) );

    //截取得到 ["C语言中文网", "http://c.biancheng.net/", "PHP"]

    print_r( array_slice($info, 0, 3) );

    //保留数组的原始键名

    print_r( array_slice($info, 0, 3, true) );

    ?>

    执行以上程序的输出结果为:

    Array

    (

    [0] => PHP

    [1] => JavaScript

    [2] => Java

    [3] => Python

    [4] => C++

    )

    Array

    (

    [0] => Python

    [1] => C++

    )

    Array

    (

    [0] => C语言中文网

    [1] => http://c.biancheng.net/

    [2] => PHP

    )

    Array

    (

    [2] => C语言中文网

    [4] => http://c.biancheng.net/

    [5] => PHP

    )

    展开全文
  • js截取数组的操作 - Kaiqisan

    千次阅读 2020-07-28 15:16:22
    js截取数组的操作 hey みんなさんこんにちはKaiqisanと申します、つの学生プログラマーである~,今天来讲一下截取数组的操作。由于我在项目的实践中总是会用到这个方法但是经常会忘记这些方法的时候,导致我经常...

    js截取数组的操作

    hey みんなさんこんにちはKaiqisanと申します、一つの学生プログラマーである~,今天来讲一下截取数组的操作。由于我在项目的实践中总是会用到这个方法但是经常会忘记这些方法的时候,导致我经常需要上百度去查询这些操作的细节,这很浪费时间,所有,今天就对数组的截取做一个总结,也顺便给自己加深记忆,希望大家看得开心

    • 获取数组最后一个元素的操作
    let arr = ['a', 'b', 'c', 'lastone'];
    
    let last = arr[arr.length - 1]; // lastone
    
    • 选中倒数第n个序列的操作
    let arr = ['a', 'b', 'c', 'd', 'e', 'f'];
    
    let a = lastName[firstName.length - 3]; // 获取倒数第三个元素d
    
    • 提取数组中介于两个指定下标之间的字符

    slice(start, end): 从下标为start的成员开始提取,直到下标为end的时候停止截取。第二个参数是可选的项,如果不填写第二个参数的话,就会一直截到数组的末尾。如果start和end参数一致的话就不执行截取操作,获取的是一个空数组
    (PS:如果截取成员过多导致越界的话不会报错,会直接截取到最后一个元素,如果第一个参数比第二个参数大的话就不会截取数组,返回一个空数组)

    let str = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
    let a = str.slice(2, 5) // ['c', 'd', 'e', 'f']
    
    let str = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
    let b = str.slice(2) // ['c', 'd', 'e', 'f', 'g', 'h']
    
    let str = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'];
    let a = str.slice(2, 2) // []
    
    let str = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'];
    let a = str.slice(2, -2) // 参数为负数的时候会自动把 -2 转化为 str.length - 2
    
    • 提取数组中从某下标开始n位成员

    splice(start, num, menber1, menber2, menber3, ....): 第一个是起始下标,第二是从该下标开始截取的元素的个数,splice截取操作会影响到原数组,原数组会失去被截取的元素。所以,为了弥补空缺,后面从第三个参数开始就可以填写想要替换的元素。(PS:如果截取成员过多导致越界的话不会报错,会直接截取到最后一个元素)

    let str = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
    let a = str.splice(2, 2, 'aa', 'aa', 'aa') 
    // str = ['a', 'b', 'aa', 'aa', 'aa', 'e', 'f', 'g', 'h']
    // a = ['c', 'd']
    
    let str = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'];
    let a = str.splice(-4, 2)  // 参数为负数的时候会自动把 -4 转化为 str.length - 4
    // str = ['a', 'b', 'c', 'd', 'g', 'h']
    // a = ['e', 'f']
    

    总结

    上面的所有方法对字符串也同样适用,谁叫字符串的本质就是一个个字符组成的一串东西呢。Kaiqisan给大家一个建议–希望大家在面对这些常用又容易忘记的方法的时候不要只是百度完复制粘贴就完事了,如果能事后再复习一下就更好了,一遍记不住就两遍三遍…最后总能烂熟于心的。总是去百度也不是一个办法啊,存脑子里面的永远是最靠谱的!

    • 看到这里,如果这对各位观众老爷有帮助的话请麻烦在下方点个赞把!(第一次求赞)
    展开全文
  • js截取数组slice(),splice()两种方法

    万次阅读 多人点赞 2019-08-15 12:01:15
    返回个索引和另个索引之间的数据(不改变原数组),slice(start,end)有两个参数(start必需,end选填),都是索引,返回值不包括end 用法和截取字符串一样 var heros=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','...

    slice()

    返回一个索引和另一个索引之间的数据(不改变原数组),slice(start,end)有两个参数(start必需,end选填),都是索引,返回值不包括end

    用法和截取字符串一样   https://blog.csdn.net/qq_43627981/article/details/99621402

    var heroes=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','貂蝉','妲己'];
    console.log(heroes.slice(1,4))//  [ "蔡文姬", "韩信", "赵云" ]开始索引为1 结束索引为4(不包括4)
    console.log(heroes)// 不改变原数组  [ "李白", "蔡文姬", "韩信", "赵云", "甄姬", "阿珂", "貂蝉", "妲己" ]

     如果开始索引为负数,将该值加上数组长度后作为开始索引,如果此时还为负数,开始索引为0。

    var heroes=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','貂蝉','妲己'];
    console.log(heroes.slice(-6,4))//  [ "韩信", "赵云" ]开始索引为2 结束索引为4(不包括4)
    console.log(heroes.slice(-10,4))//  [ "李白", "蔡文姬", "韩信", "赵云" ]开始索引为0 结束索引为4(不包括4)

    如果开始索引大于或等于数组的长度,slice()返回空数组。 

    var heroes=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','貂蝉','妲己'];
    console.log(heroes.slice(8,4))//  [ ]
    console.log(heroes.slice(10,4))//  [ ]
    console.log(heroes.slice(4,4)) //[ ]
    console.log(heroes.slice(5,4)) //[ ]

    如果结束索引省略,则截取到数组最后一位。如果为负,数组长度加上该值即为结束索引,如果此时还为负数,返回空数组。

    var heroes=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','貂蝉','妲己'];
    console.log(heroes.slice(1))// [ "蔡文姬", "韩信", "赵云", "甄姬", "阿珂", "貂蝉", "妲己" ]
    console.log(heroes.slice(1,-4))//  [ "蔡文姬", "韩信", "赵云" ] 开始索引1  结束索引8+(-4)=4
    console.log(heroes.slice(1,-10)) //[ ] 开始索引1  结束索引8+(-10)=-2

    splice()

    用来添加或者删除数组的数据,只返回被删除的数据,类型为数组(改变原数组)

    var heroes=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','貂蝉','妲己'];
    //当只有索引,从当前索引截取到最后
    console.log(heroes.splice(1))// [ "蔡文姬", "韩信", "赵云", "甄姬", "阿珂", "貂蝉", "妲己" ]
    console.log(heroes) //['李白']

     当第二个参数(删除数量)小于0视为0。

    var heroes=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','貂蝉','妲己'];
    console.log(heroes.splice(1,-10))//[]
    console.log(heroes) // [ "李白", "蔡文姬", "韩信", "赵云", "甄姬", "阿珂", "貂蝉", "妲己" ]
    

    删除并添加。

    var heroes=["李白",'蔡文姬','韩信','赵云','甄姬','阿珂','貂蝉','妲己'];
    console.log(heroes.splice(1,2,['扁鹊'],'孙膑'))//[ "蔡文姬", "韩信" ]
    console.log(heroes) //[ "李白",  [扁鹊], "孙膑", "赵云", "甄姬", "阿珂", "貂蝉", "妲己" ]

    展开全文
  • 使用 splice() 和 slice() 方法,增加,删除,截取
  • <!... <... <...截取数组一部分</title> <script> var arr = ["spring","summer","autumn","winter"]; document.write(arr.slice(1,3)); </script> </head&g.
  • js中实现截取数组的后几个元素作为个新数组的方法 有时候我们会遇到这种需求,截取数组中后5个元素作为个新数组,且顺序不能变。数组中的slice()方法和splice()方法都可以实现这样的操作。 const arr = [1...
  • 截取js数组中某段值(slice)

    千次阅读 2020-08-12 10:03:57
    从索引1开始截取。 // console.log(a.slice(1,2)); >>[2] 从索引1可以截取到索引2之间的值 // console.log(a.slice(0,2)); >>[1,2] 从索引0开始截取到索引2之间的值 // console.log(a.slice(-1...
  • 截取数组对应的长度
  • JS Array.slice 截取数组的实现方法

    千次阅读 2021-03-05 15:22:28
    slice定义和用法slice() 方法可从...也就是说,-1 指最后个元素,-2 指倒数第二个元素,以此类推。end可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 s...
  • js获取数组部分元素

    千次阅读 2020-03-09 21:00:19
    (1)根据数组下标来获取 (2)用filter过滤数组中的一部分元素
  • 前言:在开发项目的过程中遇到这样的个问题,就是需要对接口查询出来的数据两个两个的进行截取,之后分别两个两个的放入数组中,再把这些数组放到个新数组中,实现方法如下: 方法: function arrayChunk...
  • x=y.contact(); x=y.slice(start,end);
  • js截取数组slice() 和 splice() 的用法

    千次阅读 2020-03-30 18:48:40
    句话先提前概括: slice(start,end) 从哪到哪开始删 splice(strt,end,index...---该方法不会改变元素数组,而是将截取到的元素封装到个新数组中返回 参数: 1.截取开始的位置的索引,包含开始索引 2.截取结...
  • 可能是java和js学的不好,第时间没想到怎么写。   后来知道可以用arr.slice(start,end)实现。   slice 方法返回的是个 Array 对象,其中start指的是想要截取的头部下标,end是尾部下标,但不包括end元素。...
  • page({ data: { videoList: {}, }, //省略向后台获取videoList的步骤 var items = this.data.videoList; //向后台获取到的list集合 for (var i = 0; i < items.length; i++) { ......
  • js数组截取方式splice()和slice()方法

    千次阅读 2021-02-04 10:36:41
    splice() 方法可以添加元素、删除元素,也可以截取数组片段。删除元素时,将返回被删除的数组片段,因此可以使用 splice() 方法截取数组片段 // 传递个参数,则该方法仅执行删除操作,参数值指定删除元素的起始...
  • js字符串数组截取操作常用方法综合解析。 1.substr() substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符。 语法:stringObject.substr(start,length) start:必需。要抽取的子串的起始下标。必须是...
  • JS截取数组:使用splice()和slice()方法
  • 定义和用法 slice() 方法可从已有的数组中返回选定的元素。 slice()方法可提取字符串的某个...如果该参数为负数,则表示从原数组中的倒数第几个元素开始提取,slice(-2) 表示提取原数组中的倒数第二个元素到最后..
  • [转]JS Array.slice 截取数组的实现方法

    千次阅读 2019-06-26 10:25:22
    这篇文章主要介绍了JS Array.slice 截取数组的实现方法,因为我们需要控制一下长度,需要的朋友可以参考下 slice定义和用法 slice() 方法可从已有的数组中返回选定的元素。 语法 arrayObject.slice(...
  • js数组的连接和截取

    万次阅读 2018-01-27 13:53:37
     将俩个数组拼接成个新数组; 2、截取  var subArr = arr.slice(starti,endi+1);  截取arr数组中从starti处开始到endi位置之间的数组; 3、splice:删除、插入、替换  删除 var delete = arr....
  • js 获取数组中的部分元素

    万次阅读 2017-07-22 11:08:43
    可以用Array中自带的方法:arrayObj.shift( )shift 方法可移除数组中的第个元素并返回该元素。例如:var ary=[1,2,3,4];var a=ary.shift();//a=1;ary=[2,3,4];arrayObj.slice(start, [end]) slice 方法返回个 ...
  • let arr = [] //处理后的数组 let oleArr = [{},{},{},{}] //需要处理的数组对象 for(var i in oleArr){ let obj={type:0,title:""} //取出的元素 obj.title=oleArr[i].title obj.type=oleArr[i].type ...
  • 截取数组部分元素,得到个新的子数组arraySlice(array, offset[, length])参数解释:array: 数组,offset – 数组的偏移。正值表示左侧的偏移量,负值表示右侧的缩进值。数组下标从1开始。-- length - 子数组的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,089
精华内容 9,235
关键字:

js截取数组的一部分