ES5手写一个迭代器(iterator)
//使用@@iterator对象可以创造一个迭代器, let iterator = number[Symbol.iterator](); // console.log(iterator.next().value); function createIterator(items){ var i = 0; return { next:function(){ var done = (i>=items.length); var value = !done ? items[i++]:undefined; return { done: done, value: value }; } } } var iterator= createIterator([1,2,3]) console.log(iterator.next()) // "{ value: 1, done: false }" console.log(iterator.next()) // "{ value: 2, done: false }" console.log(iterator.next()) // "{ value: 3, done: false }" console.log(iterator.next()) // "{ value: undefined, done: true }" //之后重复调用返回一样的结果。 console.log(iterator.next()) // "{ value: undefined, done: true }"
前端问题总结 文章被收录于专栏
总结一些前端常见的面试笔试题,来和大家分享鸭