当前位置: 移动技术网 > IT编程>开发语言>JavaScript > promise的理解和应用

promise的理解和应用

2018年09月05日  | 移动技术网IT编程  | 我要评论
老铁们,我又满血复活了,今天我准备来吹一波我对promise,如有错吴请直接指出,明白了吗?话不多说开始吧 首先我们需要知道啥叫promise,我问了问大佬,他说这个东西是 异步操作的同步代码(but有兼容问题). 下面我来说说我自己对他的理解: 这个小东西吧还是挺可爱的,来,我们了解了解他 1.它 ...

  老铁们,我又满血复活了,今天我准备来吹一波我对promise,如有错吴请直接指出,明白了吗?话不多说开始吧

  首先我们需要知道啥叫promise,我问了问大佬,他说这个东西是 异步操作的同步代码(but有兼容问题).

       下面我来说说我自己对他的理解:

        这个小东西吧还是挺可爱的,来,我们了解了解他

        1.它是一个构造函数,使用的时候需要用new实例化

        2.他有一个参数,这个参数是一个回调函数,这个回调函数里面又有两个参数,第一个为resolve  第二个为 reject   (这里先放一下,我们来上一段代码要不然太抽象了)

    new promise(function(resolve,reject) {
             resolve()
       }).then(function(){},function(){})
      注释:当回调函数里面调用resolve()时,.then会调用第一个函数;当回调函数里面调用reject()时,.then会调用第二个函数
                  也可以如下面这样写
      new promise(function(resolve,reject) {
               resolve()
          }).then(function(){}).cath(function(){})    
                 注释:这种写法,当回调函数里面调用resolve()时,.then会执行;当回调函数里面调用reject()时,.catch会执行
                    大佬们可能发现了,那我的resolve和reject是形参啊,可不可以用别的名字,当然可以的啦,不过要注意和回调函数内部的调用名字统一起来
  
   3.promise.all(arr).then(function(){})         arr为数组
           now,我们来说一说promise的非常有用的方法之一  all方法,这个方法作用:当all里面数组里的所有异步操作都执行完毕后再去执行.then();
  
  4.promise.race(arr).then(function(){})       arr为数组
          接下来我们来说一说promise的另一个方法  race方法,这个方法作用:当race里面数组里的异步操作只要有一个执行完毕后就会去执行.then();
       
  5.我自己体会的作用,如有缺失,请立刻联系我,你给我补充,我给你打钱
    promise作用:    1.解决回调地狱(关于这个地狱问题,我会在随后的随笔中介绍一下)
            2.将ajax获取来的数据和业务逻辑分开
                 2.promise.all()方法可以解决多个ajax传回的信息再次组合进行查询
       告辞,告辞

************************************************又在成为最会说相声的程序员的路上迈出了具有历史性的一步*******************************************************************

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网