迭代器模式
迭代器模式的定义:提供一个方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。
简单来说就是实现对一个对象的迭代。。。
内部迭代器
这在ES6里已经有了原生的支持:[Symbol.iterator],该方法在所有的数组、Map、Set中都已经有了实现,所以可以通过for...of...来迭代遍历这些对象;但是对象里是没有内置该方法的,可以通过手动添加迭代器来实现对象的迭代,原理是获得对象中的所有key,然后挨个查找key对应的value。
以下是实现一个自带迭代器的类的代码:
class Obj { constructor() { this.a = "a"; this.b = "b"; this.c = "c"; } [Symbol.iterator]() { const keys = Object.keys(this); let count = 0; return { next: () => { return keys[count] ? { done: false, value: this[keys[count++]] } : { done: true, value: undefined }; }, //? 迭代中途退出时使用 return: () => { ......原文转载:http://www.shaoqun.com/a/873490.html
跨境电商:https://www.ikjzd.com/
c79:https://www.ikjzd.com/w/1016
阿里巴巴 批发:https://www.ikjzd.com/w/1084
海淘贝:https://www.ikjzd.com/w/1726
迭代器模式迭代器模式的定义:提供一个方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。简单来说就是实现对一个对象的迭代。。。内部迭代器这在ES6里已经有了原生的支持:[Symbol.iterator],该方法在所有的数组、Map、Set中都已经有了实现,所以可以通过for...of...来迭代遍历这些对象;但是对象里是没有内置该方法的,可以通过手动添加迭代器来实现对象的迭代,原
亚马逊t恤:https://www.ikjzd.com/w/1932
lithium:https://www.ikjzd.com/w/2505
网络星期一:https://www.ikjzd.com/w/80
盘山一日游 赏两季美景_景色:http://www.30bags.com/a/219816.html
盘县哒啦仙谷门票2021年1月价格:http://www.30bags.com/a/230921.html
盘县哒啦仙谷在哪里,怎么走?:http://www.30bags.com/a/230920.html
磐安龙溪漂流在哪里,怎么走?:http://www.30bags.com/a/380326.html
男人爱㖭女人下边 被㖭下面是什么感觉:http://lady.shaoqun.com/m/a/247485.html
男的半夜去公园让女网友"下地",又抢了钱:http://lady.shaoqun.com/a/418108.html
不注意这点,订单再多也是白干!原来跨境大卖们在用它……:https://www.ikjzd.com/articles/146592
女人偷偷和同事在野外约会"亲密"老公用卫生纸抓奸(图):http://lady.shaoqun.com/a/418109.html
90%的男生阅历很深,女生有那么多"随便"的意思?:http://lady.shaoqun.com/a/419109.html
No comments:
Post a Comment