JavaScript:匿名 promise 解析器函数中的递归

标签 javascript recursion promise

我有一个返回 promise 的函数。 (本例中为 foo)

我尝试在声明为匿名的解析函数中调用此函数。

我已经尝试过使用this 但这不起作用。

我的代码是这样的

var foo = function(boo) {
    /* .... */
    return deferred.promise;
};

var bar = 42;

foo(bar).then(function() {
    foo(bar--).then(this); //"this" don't work
});

我做错了什么?

谢谢

最佳答案

最简单的方法就是命名匿名函数

foo(bar).then(function fn() {
    foo(bar--).then(fn);
});

也可以单独声明函数

function fn() {
    foo(bar--).then(fn);
}
foo(bar).then(fn);

关于JavaScript:匿名 promise 解析器函数中的递归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27290515/

相关文章:

javascript - 鼠标事件在移动设备上不起作用

javascript - 如何使用 jQuery UI 在 contenteditable div 中拖放文本

c++ - 递归函数的时间复杂度,其中递归减少了大小

javascript - 第二个 .then() on promise 被调用时数据未定义

javascript - Angularjs promise 拒绝链接

javascript - 使用 jquery 悬停时不显示链接

javascript - 使用循环中的嵌套 promise 控制流程

java - 递归 - boolean 和大信号

javascript - 层次树中的递归

Javascript Promise 链接未按预期工作