美文网首页
js数组方法之改变或不改变原数组

js数组方法之改变或不改变原数组

作者: 熬得萨菲 | 来源:发表于2020-02-07 00:25 被阅读0次

    数组方法

    改变原数组

    • push() :将参数添加到数组尾部

      • 返回添加后的数组的长度
    • pop() : 将参数从数组尾部删除

      • 返回删除的元素值,如果数组的长度为0,则返回undefined
    • unshift() : 将参数添加到数组头部

      • 返回添加后数组的长度
    • shift() : 将参数从数组头部删除

      • 返回删除的元素值,如果数组的长度为0,则返回undefined
    • reverse() : 数组倒序

      • 返回倒序后的数组,并不会创建新数组
    • sort() : 数组排序

      • 返回排序后的数组,但是范围只满足0-9的元素,超过这个值就得调用他的回调函数
      • 用法如下: a - b , 正序, b - a, 倒序, a - b = 0,返回0
      var arr = [2,1,3,4, 15, 11, 14, 12]
      arr.sort((a, b) => a - b) //[1, 2, 3, 4, 11, 12, 14, 15]
      arr.sort((a, b) => b - a) // [15, 14, 12, 11, 4, 3, 2, 1]
      
      // 错误的使用,因为元素已经大于9了
       arr.sort() // [1, 11, 12, 14, 15, 2, 3, 4]
      

    不改变原数组

    • concat(): 用于合并两个或多个数组

      • 返回合并的一个数组的副本
      [1,2].concat([3,4])  // [1,2,3,4]
      ```
      
      
    • join() : 返回一个字符串

      • [1,2].join() // '1,2'
    • slice(start, end): 剪切从索引start,到索引end数组

      • 开闭区间: [start,end)返回一个新的数组
    • splice(start, deleteCount, item1, item2,...): 插入或移除或替换元素

      • 如果是移除或替换,则返回数组中被移除的元素所组成的新数组,如果不是删除,则返回空数组
      • 参数:
        1. start: 起点索引
        2. deleteCount: 需要移除的元素个数
        3. item1,item2...: 需要插入的参数
      var arr = [1,2,3,4];
      ---------新增---------------
      arr.splice(1,0,4,5) // 插入返回空数组 []
      console.log(arr) // [1,4,5,3,4]
      --------替换[1,4,5,3,4]----------
      arr.splice(1,1,10,11) // 返回被替换的元素 [4]
      console.log(arr) // [1,10,11,5,3,4]
      --------移除[1,10,11,5,3,4]-------
      arr.splice(1,3) // [10, 11, 5]
      console.log(arr) // [1,3,4]
      

    相关文章

      网友评论

          本文标题:js数组方法之改变或不改变原数组

          本文链接:https://www.haomeiwen.com/subject/mlvpxhtx.html