首页 > 编程语言 > 详细

数组API—02

时间:2021-01-21 21:04:33      阅读:28      评论:0      收藏:0      [点我收藏+]

(11)indexOf() & lastIndexOf()

①indexOf() 方法可返回数组中某个指定的元素位置。

该方法将从头到尾地检索数组,看它是否含有对应的元素。开始检索的位置在数组 start 处或数组的开头(没有指定 start 参数时)。如果找到一个 item,则返回 item 的第一次出现的位置。开始位置的索引为 0。

如果在数组中没找到指定元素则返回 -1。

1 let arr = [1,2,3]
2 let i = arr.indexOf(2)
3 console.log(i);  // 1

 它还有第二个参数,表示开始查找的位置

②lastIndexOf() 方法可返回一个指定的元素在数组中最后出现的位置,从该字符串的后面向前查找。

该方法将从尾到头地检索数组中指定元素 item。开始检索的位置在数组的 start 处或数组的结尾(没有指定 start 参数时)。如果找到一个 item,则返回 item 从尾向前检索第一个次出现在数组的位置。数组的索引开始位置是从 0 开始的。

用法同上,这里不再写示例

(12)join()

join() 方法用于把数组中的所有元素放入一个字符串。

1 let arr = [1,2,3]
2 let str = arr.join(‘-‘)
3 console.log(str);  // 1-2-3

说明:

  • 分隔符不写则默认是英文逗号

(13)map()

map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

map() 方法按照原始数组元素顺序依次处理元素。

注意: 

  • map() 不会对空数组进行检测。
  • map() 不会改变原始数组。
1 let arr = [1,2,3]
2 let newArr = arr.map((e,i,a)=>{
3     return e*e
4 })
5 console.log(newArr);  // [1,4,9]

 说明:

  • 回调的三个参数分别是:当前遍历的元素、当前元素的索引、原数组

(14)pop() & push() & shift() & unshift()

①pop() 方法用于删除数组的最后一个元素并返回删除的元素。

注意:此方法改变数组的长度!

1 let arr = [1,2,3,4]
2 let e = arr.pop()
3 console.log(e);  // 4
4 console.log(arr);  // [1,2,3]

②push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

注意: 新元素将添加在数组的末尾。

注意: 此方法改变数组的长度。

1 let arr = [1,2,3]
2 arr.push(4)
3 console.log(arr);  // [1, 2, 3, 4]
4 arr.push(7,8)
5 console.log(arr);  // [1, 2, 3, 4, 7, 8]

③shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

1 let arr = [1,2,3]
2 arr.shift()
3 console.log(arr);  // [2, 3]

④unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

1 let arr = [1,2,3]
2 arr.unshift(4) 
3 console.log(arr);  // [4, 1, 2, 3]

(15)slice()

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

array.slice(start, end)
  • start:
    • 可选。规定从何处开始选取。
    • 如果是负数,那么它规定从数组尾部开始算起的位置。
    • 如果该参数为负数,则表示从原数组中的倒数第几个元素开始提取,slice(-2) 表示提取原数组中的倒数第二个元素到最后一个元素(包含最后一个元素)。
  • end:
    • 可选。规定从何处结束选取。
    • 该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。
    • 如果该参数为负数, 则它表示在原数组中的倒数第几个元素结束抽取。 slice(-2,-1) 表示抽取了原数组中的倒数第二个元素到最后一个元素(不包含最后一个元素,也就是只有倒数第二个元素)。

说明:

  • 如果两个参数都不传,则相当于把原数组复制了一份(浅复制,如果包含引用类型的元素,那么复制的是地址,修改一份,另一份也会随之改变)

(16)splice()

splice() 方法用于添加或删除数组中的元素

注意:这种方法会改变原始数组。

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

参数:

  • index:开始插入/删除的索引
  • howmany:需要删除的元素长度,0表示添加
  • item...:希望添加的元素。这里可以配合ES6的结构来使用(...)
1 let arr = [1,2,3,4,5]
2 arr.splice(2,1,30)  // [1, 2, 30, 4, 5]  替换元素
3 arr.splice(2,0,30)  // [1, 2, 30, 3, 4, 5]  添加元素到指定位置

 

 

 

 

 

 

 

 

 

数组API—02

原文:https://www.cnblogs.com/codexlx/p/14309591.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!