The enumerate function in Javascript
- 时间:2020-09-16 12:48:17
- 分类:网络文摘
- 阅读:158 次
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) —
推荐阅读:百度快照投诉功能恢复正常,新增快照失效类型选项 新网站排名不稳固,三大SEO优化技巧你做到了吗? SEO优化网站诊断的几个技巧,你知道多少? bootstrap响应式导航激活高亮,dedecms导航代码分享 为什么自媒体比SEO更火?答案都在这里 发外链还管用么?2020年还能用的外链策略 新网站关键词排名不稳定的原因分析 网站快速收录的方式有哪些 百度只收录主域但不收录带www的域名的解决方法 谷歌网站排名,内容与页面体验,谁更重要?
- 评论列表
-
- 添加评论