当前位置: 首页 > news >正文

linux是哪个公司开发的百度seo提高排名费用

linux是哪个公司开发的,百度seo提高排名费用,哔哩哔哩网页版打开,网站建设报价图片欣赏iterator和generator iterator es6: let/const ...展开 迭代器 是一种机制,比如在控制台输出Iterator是没有这个类的,为不同的数据结构提供迭代循环的机制。 迭代器对象:具备next方法,next能够对你指定的数据进行迭代循环&#x…

iterator和generator

iterator

es6: let/const ...展开 

迭代器

是一种机制,比如在控制台输出Iterator是没有这个类的,为不同的数据结构提供迭代循环的机制。

迭代器对象:具备next方法,next能够对你指定的数据进行迭代循环,next依次取出集合中的每一项。第一次执行next拿第一项,第二次执行next拿第二项……

内部实现

具备Symbol.iterator

JS - iterator(迭代器)

内部实现

ps.done为true结束那个循环,为true时那个值也不要了

obj={name:'angela',age:18,sex:'female'}
Object.prototype[Symbol.iterator]=function(){
    let self=this;
    let keys=Object.keys(self)
    let index=0;
    return {
        next(){
            // 边界校验
            if(index>=keys.length){
                return {
                    value:undefined,
                    done:true
                }
            }
            let key=keys[index++];
            let value=self[key];
            return {
                value,
                done:false,
            }
        }
    }
}
console.dir(obj)
for(let value of obj){
    console.log(value)
}

JS中的循环

new Array(99999999)  // 这个时候还是一个稀疏数组

稀疏数组是不能使用for of循环的,使用fill填充

generator生成器

生成了一个具有迭代器规范的对象(迭代器对象),

返回一个迭代器对象

通过next&yield控制函数体中的代码一步步执行

每次next得到的value就是每次执行到yield(或return)后的值

每次next传值作为上次yield的返回结果

yield* 进入生成器执行

串行

终极解决方案:递归实现

初级版

判断是否是promise


function wait(timeout){return new Promise(resolve=>{setTimeout(function() {resolve()}, timeout);})
}
function* asyncFuncton(){yield wait(1000)
    console.log('第1秒')yield wait(2000)
    console.log('第2秒')yield wait(3000)
    console.log('第3秒')
}
it=asyncFuncton()
function isPromise(obj){if(typeof obj ==='object' && obj != null || typeof obj ==='function'){if(obj.then && typeof obj.then ==='function'){return true}}return false
}
function co(it){return new Promise((resolve,reject)=>{function next(){let { value,done }=it.next()
            console.log(value,done)if(done) return resolve();// 处理value为非promise的情况if(!isPromise(value)) value=Promise.resolve(value)
            value.then(()=>{next()}).catch((e)=>reject(e))}next()})}
co(it);

完善版:

http://www.hyszgw.com/news/23280.html

相关文章:

  • 做网站外包大学生今日大事件新闻
  • 后台管理网站开发浏览器里面信息是真是假
  • 温州批发网站宁波seo外包
  • 做软件的网站搜索引擎竞价排名
  • 建设专业网站排名seo描述快速排名
  • 9.9元包邮网站怎么做seo查询爱站网
  • 企业建设网站的目标郑州百度seo网站优化
  • 承德网站全网引擎搜索
  • 域名需要跟网站名称一致么怎么弄属于自己的网站
  • 做网站关键词加到什么位置青岛seo外包公司
  • 批发购物网站建设百度托管运营哪家好
  • 衡粘水佩网站建设seo快速排名软件案例
  • 免费域名申请网站大全下载谷歌推广代理公司
  • wordpress管理员信息在哪网站seo运营
  • 有没有专门做二手电脑的网站新闻稿范文
  • 北京延庆城乡建设部网站首页广告免费发布信息平台
  • 用vs2013做网站登录seo入门基础知识
  • 西安企业建站公司获客软件排名前十名
  • 长沙租车网站排名网络运营策划
  • 汉寿网站建设商业软文
  • java做的网站实例排行榜网站
  • 织梦美女图片网站模板360网站推广费用
  • myeclipse做web网站怎样推广小程序平台
  • 博彩类网站怎么做看颜色应该搜索哪些词汇
  • 对于网站建设提出建议百度seo排名报价
  • 企业网站如何做网警备案推广活动策划方案范文
  • 社会化营销案例库电商关键词排名优化怎么做?
  • 快乐彩网站做百度排名优化
  • 哪个网站能学做微商网络策划
  • 网站开发 纠纷百度文库个人登录