这似乎太奇怪了。
我有以下
$.when.apply(null, arrayOfDeferredObjects).then(function(result)) {
if (1 == arrayOfDeferredObjects.length){
//stuff done here
}
else{
for (var index = 0; index < contentUnits.length; index++) {
if(arguments && arguments[index][0] && arguments[index][0].response) {
//stuff done here
}
};
}
我的期望是,参数将是延迟数组中 1 个调用的 1 个对象的数组,以及延迟数组中 X 调用的 X 对象数组。
我知道为什么会这样,但是检查数组的长度让我很沮丧。当只有 1 个对象并且有超过 1 个对象时,参数不是数组。这很明显。我可以做些什么来使返回的参数不仅仅代表第一次调用吗?