美文网首页
关于promise对象学习

关于promise对象学习

作者: QRFF | 来源:发表于2018-05-31 21:48 被阅读0次
  • 我们在使用函数的时候经常需要在函数的参数传入另外一个函数,一层一层传递,很容易造成回调地狱,这样的代码不利于维护;
  • promise是个构造函数对象,解决了回调问题,它有三种状态,resolve,reject,pedding,常用到的方法则有 then,catch,all,race
  • 这是我看到有关promise入门最好的文章https://juejin.im/post/5afe6d3bf265da0b9e654c4b
      //  let p = new Promise((resolve,reject)=>{
    //      setTimeout(function(){
    //          var num = Math.ceil(Math.random()*10)
    //          if(num<=5){
    //              resolve(num)
    //          }
    //          else{
    //              reject('数字太大了')
    //          }
    //      },1000)
    //  })
     
     //reject用法
    //  p.then((data)=>{
    //      console.log('resolved',data)
    //  },(err)=>{
    //      console.log('rejected',err)
    //  })


    //catch的用法
    // p.then((data) => {
    // console.log('resolved',data);
    // console.log(somedata); //此处的somedata未定义
    // })
    // .catch((err) => {
    //     console.log('rejected',err);
    // })


    //all的用法
    // let p1=new Promise(function(resolve,reject){})
    // let p2=new Promise(function(resolve,reject){})
    // let p3=new Promise(function(resolve,reject){})

    // let p = Promise.all([p1,p2,p3])
    // p.then(function(){
    //     // 三个都成功则成功  
    // },function(){
    //     // 三个都成功则成功  
    // })

    //race的用法
    // function requestImg(){
    //     var p = new Promise((resolve,reject)=>{
    //         var img = new Image();
    //         img.onload=()=>{
    //             resolve(img)
    //         }
    //         img.src='图片的路径'
    //     })
    //     return p;
    // }
    // function timeout(){
    //     var p = new Promise((resolve,reject)=>{
    //         setTimeout(()=>{
    //             reject('图片请求超时')
    //         },5000)
    //     })
    //     return p;
    // }
    // Promise.race([requestImt(),timeout()]).then((data)=>{
    //     console.log(data)
    // }).catch((err)=>{
    //     console.log(err)
    // })

相关文章

  • 关于promise对象学习

    我们在使用函数的时候经常需要在函数的参数传入另外一个函数,一层一层传递,很容易造成回调地狱,这样的代码不利于维护;...

  • Node 学习(二)

    Promise学习 Promise含义 容器,保存异步操作的结果对象,获取异步操作的消息 Promise对象特点 ...

  • Promise对象

    Promise 多个异步回调: 详情关于promise对象的一些讲解 Promise.all() .catch()用法

  • 关于Promise对象

    由来: 在es6之前,如Ajax异步操作的返回结果都是通过回调函数进行处理,一两个回调函数还好,如果N个呢,那是不...

  • Promise,async,await笔记

    Promise,async,await笔记 Promise 创建promise对象 Promise对象构造方法传入...

  • Promise then方法的链式调用

    返回的是非promise对象 优化:可能返回promise对象和非promise对象

  • Promise对象

    搬运学习,非原创 Promise 的含义 Promise对象有以下两个特点。 (1)对象的状态不受外界影响。Pro...

  • Promise

    es6中有个特别的对象Promise,今天我们就来学习它,了解它。 Promise含义 Promise 是异步编程...

  • ES6之promise(resolve与reject)

    一、 Promise.resolve() 有时需要将现有对象转为 Promise 对象,Promise.resol...

  • ES6之async函数

    文章内容转自阮一峰老师博客.语法学习 1.返回 Promise 对象 async函数返回一个Promise 对象。...

网友评论

      本文标题:关于promise对象学习

      本文链接:https://www.haomeiwen.com/subject/nfxtsftx.html