js设计模式--行为型--迭代器模式
行为型:迭代器模式
迭代器模式:提供一种方法顺序访问一个聚合对象的各个元素,而又不暴露该对象的内部表示。
迭代器模式是设计模式中少有的目的性极强的模式,它就解决一个问题 -- 遍历。
1 // 迭代器模式 2 // 借助数组的Symbol.iterator生成它对应得迭代器对象。 3 const arr = [1, 2, 3]; 4 // 通过 iterator,拿到迭代器对象 5 const iterator = arr[Symbol.iterator](); 6 // 对迭代器对象执行next,就能逐个访问集合成员 7 iterator.next(); // {value:1,done:false} 8 iterator.next(); // 2 9 iterator.next(); // 3 10 11 //ES6 编写一个迭代器生成函数 12 function* iteratorGenerator() { 13 yield "1号选手"; 14 yield "2号选手"; 15 yield "3号选手"; 16 } 17 const iter = iteratorGenerator(); 18 iter.next(); 19 iter.next(); 20 iter.next();