介绍ES6之Promise对象

  • A+
所属分类:js教程
摘要

今天讨论的新特性让我非常兴奋,因为这个特性是 ES6 中最神奇的特性。

今天讨论的新特性让我非常兴奋,因为这个特性是 ES6 中最神奇的特性。

简介

Promise对象是异步编程的一种解决方案。所谓Promise,简单来说就是一种容器,里面包含着未来可能结束的一个事件的结果。

Promise包含三种状态,pending,fulfilled,rejected。
表现为从pending到fulfilled,或者从pending到rejected。

下面是一个Promise实例的生成

// es5 写法
 const promise = new Promise(function(resolve, reject) {
        if (/*这里填写操作(一般是异步操作)*/) {
            resolve(value);
        } else {
            reject(error)
        }
    })
   // es6 写法,以后默认使用es6语法   const promiseEs = new Promise((resolve, reject) => {        if (/*操作*/) {
            resolve(value);
        } else {
            reject(error);
        }
    })

操作部位一般是一个异步方法,resolve和reject是es6官方给的方法可以获取到操作部位的返回结果

promise的使用

    promise.then((value) => {        console.log("success" + value);
    }, (error) => {        console.log("error" +error);
    })

then方法接受两个回调函数作为参数,第一个方法在Promise对象状态从pending变为fulfilled时调用,第二个方法在状态从pending变为rejected时候调用。
另外 上面的使用方法可以写成类似于try/catch的形式,将rejected时的处理剥离出来放到catch里面处理。
promise的使用2

    promise.then((value) => {        console.log("success" + value);
    }).catch((error) => {        console.log("error" +error);
    })

相关推荐:

ES6的新特性概览_javascript技巧

详解JavaScript ES6中的Generator_基础知识

以上就是介绍ES6之Promise对象的详细内容,更多请关注php教程其它相关文章!

除非注明,否则均为@蒲公英网原创文章,转载必须以链接形式标明本文链接

本文链接:https://www.aipgy.com/357602.html

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: