欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

ES6 Promise 简单介绍

程序员文章站 2022-05-01 10:33:13
...
ES6,为了解决回调地狱的问题,推出了Promise,字面意思上来看是一个承诺,好多介绍promise的文章都是那种让人一看就眼晕的,我也是迷茫了好久,今天从我自身来说一说,promise到底是个什么东西
Promise是一个对象(好多人要说,你这不是废话吗,js万物皆对象啊)你说得对。。。
promise是一个对象,在对象内部进行调用;最常见的写法:
function GetPromise(someting){
    let p = new Promise(resolve,reject)            //dosometing
            resolve(str);
            reject(str)
        }    return p
    }

这是最常见的创建使用promise的方式,其调用方法为

GetPromise(somgting).then(function(){}).catch(function(){})

偷了个懒,很多人这个时候要骂娘了,这个then是什么,catch又是什么,还有resolve是哪来的,reject又是哪来的,我刚接触的时候,也在想这个问题,上网一搜就没有好好告诉我的。现在我用最简单的方法来解释一下,then是成功回调,catch是异常回调,这样大家能不能明白。大家写代码肯定会有用到判断的时候比如

    if(a=1){
        alert('我好帅啊‘)
    }else{
        alert('我怎么这么帅’)
    }

通过判断a来决定触发哪一条语句,promise只不过是这种高级写法,其内部提供的resolve,绑定为是then,reject绑定catch,我们在实例化promise对象时,在其内部进行判断,在何时触发哪一回调,在实际使用时,通过then,catch绑定具体的回调。我们在使用promise来进行异步操作时,将所有的成功回调都抽象成resolve,失败回调抽象成reject,在实际调用通过then,catch’来绑定具体的回调函数,更优雅,也更抽象,当然Promise有更多方法,但是我只是想总结一下入门,再复杂的就不是我讲解的了。

以上就是ES6 Promise 简单介绍的详细内容,更多请关注其它相关文章!