【JS基础】Promise的基本使用

回调地狱:越陷越深的形式

在这里插入图片描述
回调地狱触及promise产出的核心问题

Promise有什么好处?

在这里插入图片描述
那promise怎么去用的?形式
在这里插入图片描述

  • 1.首先定义三个url的地址;获取第一个url,通过getData(),它return new Promise也就是return一个promise的class的实例。
  • 2.getData(url1).then 这个then就是new Promise里面的方法,.then(data1 => {console.log(data1) return getData(url2)})
    data1就是我们通过url1获取的数据,然后打印出来,这个地方直接return getData(url2),直接return,然后就直接可以再后面.then,我们看data2,然后return getData(url3),.then,最后.catch,它是一个防错处理,万一那一层遇到问题,就会触发error这个回调函数,就会触发catch
  • 3.写法上.then .then .then…… .then都是单层的,是一个管道形式,就是一节对应一节,一节对应一节,它不是一个嵌套形式,不像回调地狱那样,一层一层嵌套
  • 4.promise里面还是一个callback的形式,但是它把callback的形式变成了非嵌套的形式,变成了管道式的串联的形式,这就是一个进步,一串一串的形式,串联着走,永远都是一层,这就是promise的一个形式。

Promise的语法:
在这里插入图片描述
首先我们new Promise,里面传入一个函数,函数里面有两个参数,resolve和reject,当success成功的时候,执行resolve这个隐式函数,用resolve把data返回出去。当失败的时候呢,把error执行了。这样当触发了resolve和reject的时候,同理会触发then或者是catch

猜你喜欢

转载自blog.csdn.net/weixin_43352901/article/details/107556742