[TOC] #### 1. 遍歷數(shù)組 ---- 數(shù)組如下所示: ``` var arr = ['張三', '李四', '王五']; ``` **最常見的for循環(huán)** ```javascript for (var i = 0, length = arr.length; i < length; i++) { console.log(i, arr[i]) } ``` **for ... in 循環(huán)** ```javascript for (var key in arr) { console.log(key, arr[key]) } ``` **for ... of 循環(huán) (ES6)** 這種方式獲取不到數(shù)組索引值 ```javascript for (var v of arr) { console.log(v) } ``` **arr.map() 數(shù)組函數(shù)** ```javascript arr.map((item, index, array) => { console.log(item, index, array) }) ``` **forEach 遍歷** ```javascript arr.forEach((item, index, array) => { console.log(item, index, array) }) ``` **遍歷數(shù)組總結(jié)** 我習(xí)慣使用 `forEach` 遍歷數(shù)組,但是當數(shù)組數(shù)據(jù)比較大時推薦使用第一種方式(最常見的for循環(huán)), 這種方式效率高一些 #### 2. 遍歷對象 ---- **對象數(shù)據(jù)示例:** ```javascript var obj = { name: '辰風(fēng)沐陽', age: 22, qq: 23426945, } ``` **for-in循環(huán)是為了遍歷對象而設(shè)計的,雖然for-in也能用來遍歷數(shù)組** ```javascript for (var key in obj) { console.log(key, obj[key]) } ```