首页 >web前端 >前端问答 >es6中遍历跟迭代的区别是什么

es6中遍历跟迭代的区别是什么

WBOY
WBOY原创
2022-04-26 14:57:401700浏览

es6中遍历跟迭代的区别是:遍历强调的是要把整个数据依次全部取出来,是访问数据结构的所有元素;而迭代虽然也是依次取出数据,但是并不保证取多少,也不保证把所有的数据取完,是遍历的一种形式。

es6中遍历跟迭代的区别是什么

本教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。

es6中遍历跟迭代的区别是什么

什么是迭代

从一个数据集合中按照一定的顺序,不断的取出数据的过程

对迭代过程的封装,通常为对象,不同的语言,表现出来的迭代形式不一样

什么是遍历

使得数据结构的成员能够按某种次序排列;

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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn