概念-提炼诺言如何运作?

概念-提炼诺言如何运作?,第1张

概念-提炼诺言如何运作?

有人可以在几行中实现最基本的承诺吗?

这里是:

function Promise(fn) {    // takes a function as an argument that gets the fullfiller    var callbacks = [], result;    fn(function fulfill() {        if (result) return;        result = arguments;        for (var c;c=callbacks.shift();) c.apply(null, arguments);    });    this.addCallback = function(c) {        if (result) c.apply(null, result)        else callbacks.push(c);    }}Promise.prototype.then = function(fn) {    var that = this;    return new Promise(function(c){        that.addCallback(function() { var result = fn.apply(null, arguments); if (result instanceof Promise)     result.addCallback(c); else     c(result);        });    });};

这两个摘要有什么关系?

ajax
getPromiseForAjaxResult
函数调用

function getPromiseForAjaxResult(ressource) {    return new Promise(function(callback) {        ajax({url:ressource}, callback);    });}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5148956.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存