成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ES6新增語法—數組新增七種方法介紹

開發 前端
數組(Array)是有序的元素序列。 若將有限個類型相同的變量的集合命名,那么這個名稱為數組名。組成數組的各個變量稱為數組的分量,也稱為數組的元素,有時也稱為下標變量。

[[414620]]

forEach:遍歷數組

foreach只是對數組進行遍歷,并不會改變原來的數組。

示例:打印數組中的每個元素。

  1. let arr = ['a','b','c']; 
  2. arr.forEach(item=>{ 
  3.  console.log('當前元素',item) 
  4. }) 

上述使用了箭頭函數,省略了括號,如果需要數組下標的時候,可以把標加上,改寫成:

  1. let arr = ['a','b','c']; 
  2. arr.forEach((item,index)=>{ 
  3.  console.log('當前元素',item) 
  4.  console.log('當前元素下標',index
  5. }) 

如果是給同級的幾個元素遍歷設置背景顏色時,運行發現失敗,代碼如下:

  1. window.onload = function(){ 
  2.  let aDiv = document.getElementsByTagName('div'
  3.  aDiv.forEach(item=>{ 
  4.   item.style.background = "red" 
  5.  }) 

運行報錯:Uncaught TypeError: aDiv.forEach is not a function at window.onload

報錯主要是因為 aDiv 并不是一個真正的數組,它是一個類數組。此時我們需要借助from方法。

from:轉換數組

from()方法把類數組轉換成真正的數組。

使用語法:Array.from(類數組)

此時我們只需要借助from方法,把aDiv轉換成真正的數組,就可以使用forEach遍歷,給每個元素設置背景。代碼如下:

  1. window.onload = function(){ 
  2.  let aDiv = document.getElementsByTagName('div'
  3.  Array.from(aDiv).forEach(item=>{ 
  4.   item.style.background = "red" 
  5.  }) 

map:映射

原數組被映射成一個新的數組。返回值是一個新數組,不改變原來的數組。

將一組成績映射成是否及格的布爾值,判斷大于60分就算及格,否則就不及格。代碼如下:

  1. let grad = [55,66,77,88] 
  2. let arr2 = grad.map(function(item){ 
  3.  return item>=60 
  4. }) 
  5. console.log("arr2",arr2) 

filter:過濾

Filter過濾數組,進去一堆出來幾個,返回過濾后的新數組。

比如去掉數組中的偶數,只保留奇數。

  1. let num = [1,2,3,4,5,6,7,8] 
  2. let odd = num.filter(function(item){ 
  3.  return item%2 
  4. }) 
  5. console.log("odd",odd) 

reduce:匯總

進去一堆數據,出來一個。比如求和或者求平均數。

以下是求平均數的一個實例:

  1. let num = [1,2,3,4,5,6,7,8] 
  2. let evr = num.reduce((tmp,item,index)=>{ 
  3.  if( index<num.length ){ 
  4.   return tmp+item 
  5.  }else
  6.   return (tmp+item)/num.length 
  7.  } 
  8. }) 

上述的tmp是中間的一個結果,最開始是第一個值。

find:查找

在數組中找到符合要求的對象,和filter的區別是找到符合要求的對象就停止搜索了,返回的是一個對象。

查找姓名叫王五的這個人,代碼如下:

  1. let pers = [ 
  2.  { name:'倩倩',age:18 }, 
  3.  { name:'張三',age:25 }, 
  4.  { name:'王五',age:60 } 
  5. let per = pers.find(function(item){ 
  6.  return item.name === '王五' 
  7. }) 
  8. console.log('per',per)//per {name"王五", age: 60} 

erver()、some()

every目標數組中每一個對象都符合條件則返回true,否則返回false。

some目標數組中有一個或一個以上符合條件就會返回true,否則返回false。

  1. let pers = [ 
  2.  { name:'倩倩',age:18 }, 
  3.  { name:'張三',age:25 }, 
  4.  { name:'王五',age:60 } 
  5. //年齡是否都小于30 
  6. let isYoung = pers.every(item=>{ 
  7.  return item.age < 30 
  8. }) 
  9. //年齡有小于30的 
  10. let haveYoung = pers.some(item=>{ 
  11.  return item.age < 30 
  12. }) 
  13. console.log("isYoung",isYoung) // false 
  14. console.log("haveYoung",haveYoung) //true 

 

責任編輯:姜華 來源: 今日頭條
相關推薦

2021-08-16 07:05:58

ES6Promise開發語言

2021-07-30 07:10:07

ES6函數參數

2021-08-18 07:05:57

ES6Asyncawait

2021-07-16 07:26:48

ES6javascript開發語言

2011-12-16 14:45:36

JavaJSP

2011-05-30 13:37:46

JSP

2016-09-28 20:05:22

2022-10-27 08:09:33

2023-04-18 15:57:30

2024-07-29 08:00:00

2022-01-26 07:18:57

ES6WeakSetMap

2022-09-30 10:48:12

AR制造業

2021-07-02 10:43:52

IT人才首席信息官人才招聘

2016-12-27 19:19:51

2009-10-29 16:32:24

查看Oracle用戶的

2022-05-09 13:35:56

云配置云安全黑客

2024-11-21 16:30:21

2021-11-19 10:10:14

手機移動設備網絡攻擊

2024-10-21 13:05:40

2023-06-08 09:00:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲一区二区三区四区五区午夜 | 日韩免费1区二区电影 | 一区二区在线免费观看 | av在线一区二区三区 | 成人欧美一区二区三区黑人孕妇 | 日日摸夜夜爽人人添av | 国产精品色 | 日韩精品在线网站 | 日本精品久久久久久久 | 毛片在线免费播放 | 日日碰狠狠躁久久躁婷婷 | 久久亚洲国产精品日日av夜夜 | 国产一级特黄aaa大片评分 | 国产精品久久精品 | 国产精品国产精品国产专区不片 | 祝你幸福电影在线观看 | 久久综合九九 | 日日操夜夜操天天操 | 日本精品在线播放 | 神马九九 | 亚洲毛片网站 | 久草精品在线 | 亚洲一区视频 | 国产亚洲精品精品国产亚洲综合 | 龙珠z国语版在线观看 | 日韩在线一区二区三区 | 欧美在线视频一区二区 | 久久美女网 | 免费xxxx大片国产在线 | 欧美v在线观看 | 天天干国产 | 亚洲视频观看 | 久久久一二三 | 99爱在线观看 | 黄色欧美视频 | 国产精品一区久久久久 | 久久一区精品 | 亚洲成人一级 | 久久一 | av第一页| 91免费电影 |