Javascript $.when.apply($,$.map(数组,someFunction(x){}))的返回值?

Javascript $.when.apply($,$.map(数组,someFunction(x){}))的返回值?,javascript,jquery,deferred,Javascript,Jquery,Deferred,getTickets函数返回什么 function getTickets(needsTickets) { return $.when.apply($, $.map(needsTickets, function(x) { return function(x) { return $.ajax() } ; })); } $。当返回 它可以用来附加一个同步回调。它们将在$结束时执行。当执行时 $.when(...).done(function() { conso

getTickets函数返回什么

function getTickets(needsTickets) {
    return $.when.apply($, $.map(needsTickets, function(x) {
        return function(x) { return $.ajax() } ;
    }));
}

$。当
返回

它可以用来附加一个同步回调。它们将在
$结束时执行。当执行时

$.when(...).done(function() {
    console.log('everything is ok');
}).fail(function() {
    console.log('not ok');
}).always(function() {
    console.log('always called');
});
apply
是函数上的javascript内置函数。它可以用来调用带有参数数组的函数。这两行代码的作用相同:

myFunction.call(null, ['test', 'test 2']);
myFunction('test', 'test 2');

$。当
返回

它可以用来附加一个同步回调。它们将在
$结束时执行。当执行时

$.when(...).done(function() {
    console.log('everything is ok');
}).fail(function() {
    console.log('not ok');
}).always(function() {
    console.log('always called');
});
apply
是函数上的javascript内置函数。它可以用来调用带有参数数组的函数。这两行代码的作用相同:

myFunction.call(null, ['test', 'test 2']);
myFunction('test', 'test 2');

让我们分析一下发生了什么:

$的结果。当
是承诺时,这就是返回的内容

$。当
不接受数组作为参数时,要处理承诺数组,需要执行以下操作:

$.when.apply( context, promiseArray);

promise数组是由
$创建的。map

让我们分析一下发生了什么:

$的结果。当
是承诺时,这就是返回的内容

$。当
不接受数组作为参数时,要处理承诺数组,需要执行以下操作:

$.when.apply( context, promiseArray);

promise数组正在由
$创建。map

将返回一个promise
getTickets('someValue')。然后(function(){alert('All ajax's done');})
实际上更像
getTickets(someArray)。然后…
返回一个承诺
getTickets('someValue')。然后(function(){alert('All ajax's done');})
实际上更像
getTickets(someArray)。然后…