为了账号安全,请及时绑定邮箱和手机立即绑定

Promise属性和方法总结

标签:
JavaScript

The Promise object is used for asynchronous computations. A Promise represents a value which may be available now, or in the future, or never.

Syntax

new Promise( /* executor */ function(resolve, reject) { ... } );
  • Parameters

    Description

    
    'use strict';
    var promiseCount = 0;

function testPromise() {
var thisPromiseCount = ++promiseCount;

var log = document.getElementById('log');
log.insertAdjacentHTML('beforeend', thisPromiseCount +
    ') Started (<small>Sync code started</small>)<br/>');

// We make a new promise: we promise a numeric count of this promise, starting from 1 (after waiting 3s)
var p1 = new Promise(
    // The resolver function is called with the ability to resolve or
    // reject the promise
    function(resolve, reject) {
        log.insertAdjacentHTML('beforeend', thisPromiseCount +
            ') Promise started (<small>Async code started</small>)<br/>');
        // This is only an example to create asynchronism
        window.setTimeout(
            function() {
                // We fulfill the promise !
                resolve(thisPromiseCount);
            }, Math.random() * 2000 + 1000);
    }
);

// We define what to do when the promise is resolved/fulfilled with the then() call,
// and the catch() method defines what to do if the promise is rejected.
p1.then(
    // Log the fulfillment value
    function(val) {
        log.insertAdjacentHTML('beforeend', val +
            ') Promise fulfilled (<small>Async code terminated</small>)<br/>');
    })
.catch(
    // Log the rejection reason
    function(reason) {
        console.log('Handle rejected promise ('+reason+') here.');
    });

log.insertAdjacentHTML('beforeend', thisPromiseCount +
    ') Promise made (<small>Sync code terminated</small>)<br/>');

}
This example is executed when clicking the button. You need a browser supporting Promise. By clicking several times the button in a shor

点击查看更多内容
3人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
7244
获赞与收藏
3476

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消