Введение
В этом практическом занятии мы изучим, как превратить функцию, которая принимает массив, в вариативную функцию с использованием JavaScript. Мы добьемся этого, создав замыкание, которое собирает все входные данные в функцию, которая принимает массив. В конце практического занятия вы будете лучше понимать, как манипулировать функциями в JavaScript, чтобы сделать их более гибкими и адаптируемыми к различным сценариям использования.
Преобразование функции в вариативную функцию
Для преобразования функции, которая принимает массив, в вариативную функцию, вы можете следовать следующим шагам:
Откройте Терминал/SSH и введите
node, чтобы начать практиковаться в написании кода.Верните замыкание, которое собирает все входные данные в функцию, которая принимает массив.
const collectInto =
(fn) =>
(...args) =>
fn(args);
- Используйте функцию
collectIntoдля преобразования функции в вариативную функцию.
const Pall = collectInto(Promise.all.bind(Promise));
let p1 = Promise.resolve(1);
let p2 = Promise.resolve(2);
let p3 = new Promise((resolve) => setTimeout(resolve, 2000, 3));
Pall(p1, p2, p3).then(console.log); // [1, 2, 3] (через примерно 2 секунды)
Это позволит вам принимать любое количество аргументов в своей функции и собирать их в массив для дальнейшей обработки.
Резюме
Поздравляем! Вы завершили практическое занятие "Преобразование функции в вариативную". Вы можете практиковаться в других заданиях в LabEx, чтобы улучшить свои навыки.