数组对象常用API

146 阅读1分钟

改变原数组

  1. shift()
    删除数组第一个元素,并返回该元素的值
    let arr = [1,2,3,4,5,6]
    arr.shift() // "1"
    arr //  [2,3,4,5,6]
    
  2. unshift()
    将一个或多个元素添加到开头,并返回长度
    let arr = [1,2,3,4,5,6]
    arr.unshift(1,2,3) // 9
    arr //  [1,2,3,1,2,3,4,5,6]
    
  3. pop()
    删除数组最后一个元素,并返回该元素的值
    let arr = [1,2,3,4,5,6]
    arr.pop() // "6"
    arr //  [1,2,3,4,5]
    
  4. push()
    将一个或多个元素添加到末尾,并返回长度
    let arr = [1,2,3,4,5,6]
    arr.push(7,8,9) // 9
    arr // [1,2,3,4,5,6,7,8,9]
    
  5. reverse()
    颠倒数组中元素的顺序,并返回该数组
  6. sort()
    对数组进行排序,并返回该数组
  7. splice()
    修改Array的“万能方法”,从数组中添加/删除项目,返回被删除的元素
    语法:array.splice(index,howmany,item1,.....,itemX)
    • index:必需,从何处添加/删除元素
    • howmany:可选,表示删除多少个元素
    • item:可选,要添加到数组的新元素
    • 测试:https://www.runoob.com/try/try.php?filename=tryjsref_splice2
不改变原数组
  1. join()
    元素通过指定分隔符分隔
    let arr =  [1,2,3,4,5]
    arr.join('&') // "1&2&3&4&5"
    
  2. concat()
    把当前的Array和另一个Array连接起来,并返回一个新的Array
    let arr1 = [1,2,3]
    let arr2 = [4,5.6]
    let arr3 = arr1.concat(arr2)
    arr3 // [1,2,3,4,5,6]
    
  3. slice()
    对应string的substring(),截取Array 的部分元素,返回一个新的Array
    let arr = ['a','b','c','d','e']
    arr.slice(0,3) // ['a','b','c']
    arr.slice(3) // 从索引3开始到结束 ['d','e']
    
其他
  • indexOf()
    可以搜索一个指定元素的位置
    let arr = [10,20,'30','xyz']
    arr.indexOf(10) // 返回0
    arr.indexOf(30) // 没有找到30,返回-1 
    arr.indexOf('30') // 返回2