JavaScript设计模式样例十七 —— 迭代器模式

迭代器模式(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)
})

Git地址:https://github.com/skillnull/Design-Mode-Example

原文地址:https://www.cnblogs.com/Man-Dream-Necessary/p/12530277.html