JS promise

1.Promise是什么?promise

Promise是抽象异步处理对象以及对其进行各类操做的组件。异步

 

2.实例化async

使用new来调用Promise的构造器来进行实例化函数

var promise = new Promise(function(resolve, reject) { // 异步处理 // 处理结束后、调用resolve 或 reject });spa

 

3.实例方法code

promise.then(onFulfilled, onRejected)对象

resolve时 onFulfilled 会被调用
reject时 onRejected 会被调用blog

 

4.静态方法io

Promise.all()console

Promise.resolve()

例子:

function asyncFunction() {
    
    return new Promise(function (resolve, reject) {
        setTimeout(function () {
            resolve('Async Hello world');
        }, 16);
    });
}

asyncFunction().then(function (value) {
    console.log(value);    // => 'Async Hello world'
}).catch(function (error) {
    console.log(error);
});

 

5.Promise的状态

Fulfilled 成功

Rejected 失败

Pending 既不是resolve也不是reject的状态

 

6.new Promise的快捷方式

Promise.resolve(value)

Promise.resolve(42);

至关于

new Promise(function(resolve){
    resolve(42);
});

//resolve(42); 会让这个promise对象当即进入肯定(即resolved)状态,并将 42 传递给后面then里所指定的 onFulfilled 函数。

Promise.resolve(42).then(function(value){
    console.log(value);
});

Promise.reject(value) 同理

 

7.promise.catch

promise.catch() 至关于 promise.then(undefined, onRejected);

 

参考:http://liubin.org/promises-book/

相关文章
相关标签/搜索