迭代器模式(Itrator Pattern)
定义:用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。
目的:提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。
场景:$.each() for..of。
let each = (arr, callBack) => {
for (let i = 0; i < arr.length; i++) {
if (callBack && callBack(i, arr[i]) === false) {
break;
}
}
}
let arr = [1, 2, 3, 4]
each(arr, (index, value) => {
if (value > 2) return false
console.log(index, value)
})
Github地址:github.com/skillnull/D…