迭代器模式 ⭐
定义
迭代器模式(Iterator Pattern),提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。
实现
js
const each = function (ary, callback) {
for (var i = 0, l = ary.length; i < l; i++) {
if (callback(i, ary[i]) === false) {
break
}
}
}
each([1, 2, 3, 4, 5], function (i, n) {
if (n > 3) {
return false
}
console.log(n)
})
应用场景
- jQuery 的 $.each
- for of
- ES6 Iterator
- ES6 Generator