The enumerate function in Javascript
- 时间:2020-09-16 12:48:17
- 分类:网络文摘
- 阅读:147 次
In Python, the enumerate function is an iterator that returns/yield each time a tuple that contains an index (starting from 0 and incrementing) and the element in the list.
In Javascript, we can implement the enumerate function using the iterator and the yield keyword (the asteroid star immediate after function keyword indicates that the function should return an iterator via the yield keyword).
1 2 3 4 5 | function *enumerate(array) { for (let i = 0; i < array.length; i += 1) { yield [i, array[i]]; } } |
function *enumerate(array) {
for (let i = 0; i < array.length; i += 1) {
yield [i, array[i]];
}
}Since Javascript does not have a Tuple-type, but we can use array anyway. We can use the defined enumerate function like below:
1 2 3 4 | const list = ['a', 'b', 'c']; for (let x of enumerate(list)) { console.log(x); } |
const list = ['a', 'b', 'c'];
for (let x of enumerate(list)) {
console.log(x);
}That should output the following:
1 2 3 | [0, 'a'] [1, 'b'] [2, 'c'] |
[0, 'a'] [1, 'b'] [2, 'c']
As you can see, the incrementing index is coupled with the element in the original list/array.
Also, we can use the iterator.next() function until iterator.done is true.
1 2 3 4 5 6 | let it = enumerate(['a', 'b', 'c', 'd']) let result = it.next(); while (!result.done) { console.log(result.value) result = it.next(); } |
let it = enumerate(['a', 'b', 'c', 'd'])
let result = it.next();
while (!result.done) {
console.log(result.value)
result = it.next();
}This should print the following:
1 2 3 4 | [ 0, 'a' ] [ 1, 'b' ] [ 2, 'c' ] [ 3, 'd' ] |
[ 0, 'a' ] [ 1, 'b' ] [ 2, 'c' ] [ 3, 'd' ]
–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:心如止水,乱则不明 校园的竹林作文 视频内容如何提高搜索引擎优化排名 Google SEO优化,4个“另类”的排名方法 商城系统建设心得,轻松搞定选择困难 什么是PPC?为什么你会用到它? SEO网站优化能为你带来那些好处? 高级SEO思维详细解读 PageAdmin CMS站群系统教程:网站站群的添加和管理 友情链接交换,对于谷歌SEO是好是坏
- 评论列表
-
- 添加评论