在 javascript 里,如果我們想用一個(gè)函數(shù)處理數(shù)組 (Array) 中的每個(gè)元素,那我們有很多種選擇,最簡單的當(dāng)然就是用自帶的 forEach 函數(shù)(低版本也可以使用 lodash 中的 forEach 函數(shù)):
const arr = [0,1,2,3,4,5,6,7,8,9];arr.forEach(item=>{ console.log(item) });//依次輸出
除了這種遍歷,數(shù)組還有一種很常用的操作,就是拿來遞歸,js中的數(shù)組自帶了 pop 和 push 方法,其實(shí)也可以當(dāng)作一個(gè)鏈表來用,配合遞歸自然也是相當(dāng)好用:
const arr = [0,1,2,3,4,5,6,7,8,9];const func = (arr)=>{ item = arr.pop(); console.log(item); if (arr.length==0) return; return func(arr);}func(arr)
這樣也能實(shí)現(xiàn)和之前 forEach 類似的效果~
既然效果差不多,那我們?yōu)樯兑愠鲞@么麻煩的東西??
嘛……有些場(chǎng)景下遍歷操作也不是那么好用的啦……比如我以前博文中寫到的那個(gè)爬蟲
"use strict"const request = require('request')const fs = require('fs')const