Member 12737957 Ответов: 1

Где я ошибаюсь с этой функцией


<pre lang="Javascript">
var promises = [];
for (var i = 0; i < 10; i++) {
    promises.push($.ajax(...));
}
$.when.apply($, promises).then(function() {
    // returned data is in arguments[0][0], arguments[1][0], ... arguments[9][0]
   
}, function() {
    // error occurred
});

var sum= 0;
for (var i= 0; i< array.length;i++)
{
sum= sum + (i+1) * Array[i];
}


Что я уже пробовал:

var promises = [];
for (var i = 0; i < 10; i++) {
    promises.push($.ajax(...));
}
$.when.apply($, promises).then(function() {
    // returned data is in arguments[0][0], arguments[1][0], ... arguments[9][0]
   
}, function() {
    // error occurred
});

var sum= 0;
for (var i= 0; i< array.length;i++)
{
sum= sum + (i+1) * Array[i];
}

Richard Deeming

1) "Напишите функцию"
- Ваш код не является функцией

2) "это требует любого количества асинхронных функций"
- Это означает, что вам нужно передать обещания в качестве аргументов вашей функции, а не создавать их встраиваемыми.

3) "и вычисляет числовую сумму результатов этих функций"
- Вы не можете получить доступ к результатам, пока обещания не будут выполнены. Это означает, что внутри then обратный звонок.
- NB: Код после $.when блок работает до обещания выполнены.

4) sum= sum + (i+1) * Array[i];
- Вы еще не объявили об этом. Array переменная.
- Ты не рассчитываешь сумму результатов.

Member 12737957

У меня есть проблемы с пониманием асинхронных функций, обещаний и обратных вызовов, вот в чем суть... я прочитал несколько статей, но не совсем понял их

Richard Deeming

Это большая тема, и, к сожалению, форум "быстрые ответы" на самом деле не то место, чтобы учить вас этому.

Это выглядит как довольно простое введение в обратные вызовы: Обратные Вызовы JavaScript Объяснены С Помощью Миньонов[^]

Это кажется довольно хорошим введением в обещания: Обещания JavaScript: введение[^]

Это, вероятно, самое подробное объяснение обещаний, которое я видел: Обещания JavaScript ... В Зловещих Деталях[^]

1 Ответов

Рейтинг:
0

Richard MacCutchan

Вы тот же человек, который написал Напишите функцию, которая принимает любое количество асинхронных функций и вычисляет числовую сумму результатов этих функций[^Если это так, Пожалуйста, удалите дубликат учетной записи пользователя.


Member 12737957

Нет, это не так. Может быть, у нас одинаковые домашние задания

F-ES Sitecore

Или тот же папа?

Member 12737957

Это самозванец. Я поставил на каком-то форуме, что я бы заплатил, если бы кто-то это сделал, так что это не моя мама, это мошенничество. Теперь я попытался сделать это сам и мне нужна помощь

Richard MacCutchan

Тогда вам нужно точно объяснить, какая помощь вам нужна.

Member 12737957

Я думаю,что не очень хорошо применил... Это в целом сбивает с толку

Richard MacCutchan

Это, безусловно, так. Вы действительно понимаете вопрос?

Member 12737957

У меня есть проблемы с пониманием асинхронных функций, обещаний и обратных вызовов, вот в чем суть ... я читал некоторые статьи, но не совсем их понимал

Richard MacCutchan

Ну, это не возможно научить вас этим предметам на форуме быстрых ответов.