Day19 - this&Object Prototypes Ch3 Objects - Iteration

object 没有内建的 @@iterator,作者带我们自己建一个看看

var myObject = {
    food: '燃面',
    vegetable: '生菜',
    seasoning: '花椒'
};

Object.defineProperty(myObject, Symbol.iterator, {
    enumerable: false,
    writable: false,
    configurable: true,
    value: function() {
        var _this = this;
        var idx = 0;
        var keysList = Object.keys( _this );
        return {
            next: function() {
                return {
                    value: _this[keysList[idx++]],
                    done: (idx > keysList.length)
                };
            }
        };
    } 
}); 

var it = myObject[Symbol.iterator]();
console.log(it.next()); // { value:'燃面', done:false } 
console.log(it.next()); // { value:'生菜', done:false } 
console.log(it.next()); // { value:'花椒', done:false } 
console.log(it.next()); // { done:true }

for (var v of myObject) {
    console.log( v );
} // '燃面', '生菜', '花椒'

<<:  19 - Traces - 观察应用程序的效能瓶颈 (3/6) - 如何在 Kibana 使用 APM UI

>>:  Day19 - vue cli 使用 bootstrap modal

DAY24 迁移式学习与预训练模型

一、迁移式学习(Transfer Learning) 动机 我们在做监督式学习(Supervised...

Learning How to Make a Movie

"The Great Movie Experience" as Myron En...

Day 11 wireframe 黑白线稿设计 ( topbar + 地图)

今天在男友家写这篇,我一边写他一边趴在我背上乱摸,烦死了快写不完,给我走开RRRRRRRR 因为很多...

【Day30】回顾与完赛心得

大家好,如果你是从第一天就开始看的人,我是真心非常感谢您的陪伴,陪我走过了这疯狂的 30 天,想当...