小编给大家分享一下js中自定义迭代行为是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
说明
1、可迭代对象是实现了@@iterator方法的对象,那么可迭代对象就可以通过重写@@iterator方法实现自定义迭代行为。@@iterator是一个可以返回迭代器对象的函数。
2、当next方法返回时,迭代结束。
实例
const arr = [1, 3, 5, 7];
arr[Symbol.iterator] = function () {
const ctx = this;
const { length } = ctx;
let index = 0;
return {
next: () => {
if (index < length) {
return { value: ctx[index++] * 2, done: false };
} else {
return { done: true };
}
}
};
};
[...arr]; // [2, 6, 10, 14]
以上是“js中自定义迭代行为是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注天达云行业资讯频道!