一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

node.js|vue.js|jquery|angularjs|React|json|js教程|

服務器之家 - 編程語言 - JavaScript - js教程 - JavaScript 數組遍歷的五種方法

JavaScript 數組遍歷的五種方法

2022-02-15 18:14拾階求上 js教程

這篇文章主要介紹了JavaScript 數組遍歷的五種方法,幫助大家更好的理解和學習使用JavaScript,感興趣的朋友可以了解下

在使用 JavaScript 編寫代碼過程中,可以使用多個方法對數組進行遍歷;包括 for循環、forEach循環、map 循環、forIn循環和forOf循環等方法。

一、for 循環:基礎、簡單

這是最基礎和常用的遍歷數組的方法;各種開發語言一般都支持這種方法。

?
1
2
3
4
5
let arr = ['a','b','c','d','e'];
for (let i = 0, len = arr.length; i < len; i++) {
  console.log(i);    // 0 1 2 3 4
  console.log(arr[i]); //a b c d e
}

二、forEach() 方法:使用回調函數

forEach() 這是數組對象的一個方法;其接受一個回調函數為參數。
回調函數中有三個參數:

  • 1st:數組元素(必選)
  • 2nd:數組元素索引值(可選)
  • 3rd:數組本身(可選)
?
1
2
3
4
5
6
let arr = ['a','b','c','d','e'];
arr.forEach((item,index,arr)=> {
  console.log(item);  // a b c d e
  console.log(index); // 0 1 2 3 4
  console.log(arr);  // ['a','b','c','d','e']
})

三、map() 方法:使用回調函數

其使用方式和 forEach() 方法相同。

?
1
2
3
4
5
6
7
8
9
10
var arr = [
  {name:'a',age:'18'},
  {name:'b',age:'19'},
  {name:'c',age:'20'}
];
arr.map(function(item,index) {
  if(item.name == 'b') {
    console.log(index) // 1
  }
})

四、for..in 循環:遍歷對象和數組

for…in循環可用于循環對象和數組。
推薦用于循環對象,也可以用來遍歷json。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
let obj = {
  name: '王大錘',
  age: '18',
  weight: '70kg'
}
for(var key in obj) {
  console.log(key);    // name age weight
  console.log(obj[key]); // 王大錘 18 70kg
}
----------------------------
let arr = ['a','b','c','d','e'];
for(var key in arr) {
  console.log(key); // 0 1 2 3 4 返回數組索引
  console.log(arr[key]) // a b c d e
}

五、for…of 循環:遍歷對象和數組

可循環數組和對象,推薦用于遍歷數組。

for…of提供了三個新方法:

  • key()是對鍵名的遍歷;
  • value()是對鍵值的遍歷;
  • entries()是對鍵值對的遍歷;
?
1
2
3
4
5
6
7
8
9
10
11
12
let arr = ['科大訊飛', '政法BG', '前端開發'];
for (let item of arr) {
 console.log(item); // 科大訊飛 政法BG 前端開發
}
// 輸出數組索引
for (let item of arr.keys()) {
 console.log(item); // 0 1 2
}
// 輸出內容和索引
for (let [item, val] of arr.entries()) {
 console.log(item + ':' + val); // 0:科大訊飛 1:政法BG 2:前端開發
}

六、補充

6.1、break 和 Continue 問題

forEach、map、filter、reduce、every、some 函數中 break continue 關鍵詞都會不生效,因為是在function中,但function解決了閉包陷阱的問題。
要想使用 break、continue 可以使用 for、for...in、for...of、while

6.2、數組和對象

用于遍歷數組元素使用:for(),forEach(),map(),for...of
用于循環對象屬性使用:for...in

以上就是JavaScript 數組遍歷的五種方法的詳細內容,更多關于JavaScript 數組遍歷的資料請關注服務器之家其它相關文章!

原文鏈接:https://cn-blogs.cn/archives/9583.html

延伸 · 閱讀

精彩推薦
  • js教程一篇文章看懂JavaScript中的回調

    一篇文章看懂JavaScript中的回調

    這篇文章主要給大家介紹了如何通過一篇文章看懂JavaScript中的回調,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,...

    瘋狂的技術宅4842021-12-27
  • js教程mapboxgl實現帶箭頭軌跡線的代碼

    mapboxgl實現帶箭頭軌跡線的代碼

    這篇文章主要介紹了mapboxgl實現帶箭頭軌跡線的代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下...

    GIS兵器庫9322021-12-27
  • js教程javascript實現點擊產生隨機圖形

    javascript實現點擊產生隨機圖形

    這篇文章主要為大家詳細介紹了javascript實現點擊產生隨機圖形,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    半成熟、9702022-01-07
  • js教程詳解js創建對象的幾種方式和對象方法

    詳解js創建對象的幾種方式和對象方法

    這篇文章主要介紹了詳解js創建對象的幾種方式和對象方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的...

    joychenke3782022-01-24
  • js教程JS removeAttribute()方法實現刪除元素的某個屬性

    JS removeAttribute()方法實現刪除元素的某個屬性

    這篇文章主要介紹了JS removeAttribute()方法實現刪除元素的某個屬性,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,...

    C語言中文網7832021-12-30
  • js教程利用JS十分鐘判斷數組中存在元素的多種方式

    利用JS十分鐘判斷數組中存在元素的多種方式

    這篇文章主要給大家介紹了關于利用JS十分鐘判斷數組中存在元素的多種方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考...

    蚊子前端博客5902022-02-12
  • js教程JavaScript代碼實現簡單計算器

    JavaScript代碼實現簡單計算器

    這篇文章主要為大家詳細介紹了JavaScript代碼實現簡單計算器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    小蟲蟲~4172021-12-21
  • js教程一個參數驗證,學會 Nest.js 的兩大機制:Pipe、ExceptionFilter

    一個參數驗證,學會 Nest.js 的兩大機制:Pipe、ExceptionFilter

    前端做表單的驗證基本不用自己寫,有很多 validation 的庫,大家寫的也比較多了。后端的驗證大家可能寫的相對較少,今天我們就來學下后端框架 Nest.js 如...

    神光的編程秘籍10932021-12-28
主站蜘蛛池模板: 草莓视频网站18勿进 | 91综合精品网站久久 | 糖心在线观看网 | 精品一区二区三区免费视频 | 日日日操| 日日干影院 | 扒开胸流出吃奶 | 2022最新国产在线 | 极限淫生小说 | 欧美艳星kagney1ynn | 日本视频在线免费观看 | 国产免费大片 | 天堂日韩 | 黑人疯狂巨大xxoo | 草久网| 成人高清网站 | 美女岳肉太深了使劲 | 国产精品夜色视频一级区 | caoporm国产精品视频免费 | tobu8在线观看免费高清 | 亚洲高清视频在线 | 欧美在线欧美 | 污污免费| 撕开老师的丝袜白丝扒开粉嫩的小 | 男女肉粗暴进来下面好紧 | 娇妻中日久久持久久 | 日韩网站免费 | 我年轻漂亮的继坶2中字在线播放 | 四虎最新永久免费网址 | 91专区 | 精品国产美女AV久久久久 | 日韩国产欧美一区二区三区 | 亚洲九九九 | 俺去俺去啦最新官网在线 | 91视频破解版 | 天天爱天天操天天射 | 精品久久免费视频 | 91东航翘臀女神在线播放 | 亚洲欧美激情日韩在线 | 91短视频在线观看2019 | 久久99精国产一区二区三区四区 |