嵌套函数中的回调

时间:2012-11-14 20:29:47

标签: javascript ajax asynchronous callback

我有一个调用另一个函数的函数,依此类推。

function A(args,callback){    
// make ajax request
//  on response 
    B()    
}

function B(args){

// make ajax request
//  on response 
    C()
}

function C(args){

  // make ajax request
  //  on response 
    D()
}

我正在进行十次ajax调用。两个问题......

  1. 任何人都可以解释一下什么是回调 - 地狱?这是回调地狱吗?
  2. 如果我在函数D中调用callback(),它是否会被调用。我没有将回调作为参数传递给我的其他函数。

3 个答案:

答案 0 :(得分:3)

  1. 我不知道正在调用回调地狱,但它是意大利面条代码< /强>
  2.   

    什么是&#34;回调地狱&#34;?
      异步javascript或使用回调的javascript很难直观地获得。

    Source

    2.No,callback未在D内定义,因此您将收到错误。

答案 1 :(得分:1)

D()内,无法调用callback,因为它未在此处定义。我的意思是,只要你没有将arguments传递给回调,那么你就没有callback变量在D()内。回调地狱是一种回调调用彼此意味着A()调用B()B()调用A()的情况。

答案 2 :(得分:0)

我们可以在JavaScript中将函数引用作为参数传递,并使用此引用随时随地调用相关函数。

有关详细信息,请参阅此链接http://recurial.com/programming/understanding-callback-functions-in-javascript/