Показать сообщение отдельно
  #1 (permalink)  
Старый 15.03.2018, 21:21
Новичок на форуме
Отправить личное сообщение для 9karamba Посмотреть профиль Найти все сообщения от 9karamba
 
Регистрация: 15.03.2018
Сообщений: 1

Не понимаю связь между двумя функциями
function MakeMultiFilter(originalArray){
//я еще не написала
}

// вызов MakeMultiFilter() with originalArray = [1,2,3] возвращает функцию, сохраненную в переменную arrayFilterer1,
//that can be used to repeatedly filter the input array 
var arrayFilterer1 = MakeMultiFilter([1,2,3]); 

// вызов arrayFilterer1 (с callback функцией) чтобы отфильтровать все числа не равные 2
arrayFilterer1(function (elem) {
return elem !== 2; // check if element is not equal to 2
}, function (currentArray) {
console.log(this); // 'this' должно выводить originalArray который [1,2,3]
console.log(currentArray); // prints [1, 3]
});


Мне нужно написать функцию MakeMultiFilter, но я не понимаю связи arrayFilterer1 и MakeMultiFilter. arrayFilterer1 сначала приравнивается к MakeMultiFilter, а затем мы вызываем arrayFilterer1 с помощью 2 параметров-функций - как это вообще? Не понимаю эту связь, объясните мне кто нибудь.

В задании написано: Определите глобальную функцию MakeMultiFilter, которая принимает на вход массив originalArray как параметр и возвращает функцию, которая может быть использована в качестве фильтра для элементов массива.
Ответить с цитированием