生成器函数通过在函数名之前加上*来定义,并且在函数内部使用yield关键字来逐个返回值。 生成器函数返回一个生成器对象,这个对象也是迭代器。生成器对象可以使用next()方法来逐个访问yield语句返回的值。 生成器的一个简单示例: function* generatorFunction() { yield 1; yield 2; yield 3; } const generator = ...
function forOf(arr, callback) { // 找到迭代器函数 let iterator = arr[Symbol.iterator]; // 调用迭代器函数(注意this指向),得到迭代器对象 let it = iterator.call(arr); let obj; // 迭代器的方法next();返回一个对象:value:指向每一项,done:boolean。(是否遍历完,完成过后值为true) while (!(ob...
Genterator规格中规定return必须返回一个对象。 throw方法主要是配合 Generator 函数使用,一般的遍历器对象用不到这个方法。 letobj={a:1,b:2,c:3,[Symbol.iterator]:function(){return{next:function(){letarr=Object.keys(obj);letvalue=obj[arr[obj.count]];obj.count++;return{value:value,done:obj.count...
2. JavaScript的URLSearchParams方法(6620) 3. ios 13 陀螺仪DeviceOrientationEvent需要申请用户权限 js(5026) 4. 浏览器h5新建文件 保存到本地(相当于浏览器写文件)(3186) 5. 前端下载静态文件,显示进度(2918) 评论排行榜 1. 浏览器h5新建文件 保存到本地(相当于浏览器写文件)(1) 推荐排行榜 1. ...