数组的方法(共18项)

1、toString()

  将数组转换成字符串(以逗号分隔)

  var arr = [1,2,3] console.log(arr.toString()) // 结果为:1,2,3 

2、join()

  将数组转成字符串,类似于 toString(),但  join() 可以自定义间隔符(参数)

  var arr = [1,2,3] console.log(arr.join('+')) // 结果为:1+2+3 

3、pop()

  删除数组中的最后一个元素,返回值为删除的元素

  var arr = [1,2,3] console.log(arr.pop()) // 结果为:3 

4、push()

  数组最后一位新增,返回值为新数组的长度

  var arr = [1,2,3] console.log(arr.push('5')) // 结果为:4 

5、shift()

  删除数组的首位元素,返回值为删除的元素

  var arr = [1,2,3] console.log(arr.shift()) // 结果为:1 

6、unshift()

  数组首位新增元素,返回新数组的长度

  var arr = [1,2,3] console.log(arr.unshift('5')) // 结果为:4 

7、splice()

  向数组添加或删除元素

  • 只有一个参数时,表示数组的长度,返回值为已删除的值

   var arr = [1,2,3] console.log(arr.splice(1)) // 结果为:[2,3]

  • 有两个参数时,第一个参数表示要删除的位置,第二个参数表示删除的个数,返回值为已删除的值

      var arr = [1,2,3] console.log(arr.splice(1,1)) // 结果为:[2]

  • 三个及以上参数时,第一个参数表示要删除的位置,第二个参数表示要删除的个数,第三个及以上参数表示新增的数据

      var arr = [1,2,3] console.log(arr.splice(1,1,'5')) // 结果为:[2]

8、 concat()

  合并(连接)现有数组,得到一个新数组,返回值为新数组

  var arr = [1,2,3] var arr2 =[4,5] var arr3 = arr.concat(arr2) console.log(arr3) // 结果为:[1,2,3,4,5] 

9、slice()

  切割数组并返回切割出来的新数组

  • 只有一个参数时,表示从指定位置开始截取,到结束位置为止 

     var arr = [1,2,3] console.log(arr.slice(1)) // 结果为:[2,3] 

  • 有两个参数时,第一个参数表示开始位置,第二个参数表示结束位置(不包括此位置)

     var arr = [1,2,3] console.log(arr.slice(1,2)) // 结果为:[2]

10、sort()

  数组排序,默认为升序,返回值为排序后的新数组

   var arr = [5,2,3,7] console.log(arr.sort()) // 结果为:[2,3,5,7] 

  注:在对数字进行排序时,会产生错误的排序,可采用以下方法解决

   var arr = [5,2,3,7] console.log(arr.sort(function(m,n){ return m - n })) // 正序排序的结果为:[2,3,5,7] 

   var arr = [5,2,3,7] console.log(arr.sort(function(m,n){ return n - m })) // 倒序排序的结果为:[7,5,3,2] 

11、reverse()

  对数组中的元素进行反转

   var arr = [5,2,3,7] console.log(arr.reverse()) // 结果为:[7,3,2,5] 

12、自定义查找数组中的最大值

1 var arr = [5,2,3,7]
2 var max = 0
3 for(var i=0;i<arr.length;i++){ 
4   if(arr[i] > max){ 
5     max = arr[i]
6   }
7 }
8 console.log(max)

13、foreach()

  循环遍历数组

1 var arr = [5,2,3,7]
2 arr.forEach((value,index,array) => {
3   console.log(value,index/* ,array */)
4 })
5   // 结果为:
6   // 5 0
7   // 2 1
8   // 3 2
9   // 7 3

  共有三个参数:

  • 第一个参数为 value 数组内的元素
  • 第二个参数为 index 数组内元素的索引值
  • 第三个参数 array 数组本身

14、map()

  通过对原数组加工计算得出新数组

1 var arr = [5,2,3,7]
2 var arr2 = arr.map((value,index) => {
3   return value + 1
4 })
5 console.log(arr2)
6 // 结果为: [6,3,4,8]

  共有三个参数:

  • 第一个参数为 value 数组内的元素
  • 第二个参数为 index 数组内元素的索引值
  • 第三个参数 array 数组本身

15、filter()

  过滤数组,返回值为过滤后的新数组

1 var arr = [5,2,3,7]
2 var arr2 = arr.filter((value,index) => {
3   return value > 3
4 })
5 console.log(arr2)
6   // 结果为: [5,7]

  共有三个参数:

  • 第一个参数为 value 数组内的元素
  • 第二个参数为 index 数组内元素的索引值
  • 第三个参数 array 数组本身

16、every()

  检测数组内的所有元素,返回值为布尔值

1 var arr = [5,2,3,7]
2 var arr2 = arr.every((value,index) => {
3   return value > 3
4 })
5 console.log(arr2)
6 // 结果为: false

  共有三个参数:

  • 第一个参数为 value 数组内的元素
  • 第二个参数为 index 数组内元素的索引值
  • 第三个参数 array 数组本身

17、some()

  检查数组内的某些元素,返回值为布尔值

1 var arr = [5,2,3,7]
2 var arr2 = arr.some((value,index) => {
3   return value > 3
4 })
5 console.log(arr2)
6 // 结果为: true

  共有三个参数:

  • 第一个参数为 value 数组内的元素
  • 第二个参数为 index 数组内元素的索引值
  • 第三个参数 array 数组本身

18、indexOf()

  获取指定元素的索引值,返回值为指定元素的索引值

  var arr = [5,2,3,7] console.log(arr.indexOf(2)) // 结果为: 1 

  注:找到相应元素的索引值并返回,如果该元素不存在则返回 -1,如果该元素多次出现,则返回第一次出现时的索引值

posted on 2021-11-25 12:16  二两余晖  阅读(110)  评论(1编辑  收藏  举报