es6中遍歷跟迭代的區別是:遍歷強調的是把整個數據依次全部取出來,是訪問數據結構的所有元素;而迭代雖然也是依次取出數據,但是並不保證取多少,也不保證把所有的資料取完,是遍歷的一種形式。
本教學操作環境:windows10系統、ECMAScript 6.0版、Dell G3電腦。
什麼是迭代
從一個資料集合中按照一定的順序,不斷的取出數據的過程
對迭代過程的封裝,通常為對象,不同的語言,表現出來的迭代形式不一樣
什麼是遍歷
使得資料結構的成員能夠依某種次序排列;
ES6 創造了一種新的遍歷指令for…of循環,Iterator 介面主要供for…of消費(for of遍歷的物件必須存在遍歷器介面才可以遍歷)
區別
遍歷就是存取資料結構的所有元素,而迭代是遍歷的一種形式。
迭代強調的是依序取資料並不保證去多少,也不保證把所有的資料取完
方便強調的是要把整個資料依序全部取出
#範例如下:
遍歷一個普通陣列:
//遍历一个普通数组 const arr = [1,2,3,4,5]; for(let i = 0;i< arr.length;i++){ console.log(arr[i]) }
迭代一個普通陣列:
//迭代一个数组 const iterator = { //用于迭代数组的对象 i : 0, next(){ var result = { // value : ? // done : ? value : arr[this.i], done : this.i >= arr.length } this.i ++; return result; } } console.log(iterator) //这个对象就为迭代器 //附加的功能 //让迭代器自己取数据,知道没有数据为止 let data = iterator.next(); while(!data.done){ console.log(data.value) data = iterator.next(); } console.log("迭代完成") //
【相關推薦: javascript影片教學、web前端】
以上是es6中遍歷跟迭代的差別是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!