Преобразование функции в вариативную

Beginner

This tutorial is from open-source community. Access the source code

Введение

В этом практическом занятии мы изучим, как превратить функцию, которая принимает массив, в вариативную функцию с использованием JavaScript. Мы добьемся этого, создав замыкание, которое собирает все входные данные в функцию, которая принимает массив. В конце практического занятия вы будете лучше понимать, как манипулировать функциями в JavaScript, чтобы сделать их более гибкими и адаптируемыми к различным сценариям использования.

Преобразование функции в вариативную функцию

Для преобразования функции, которая принимает массив, в вариативную функцию, вы можете следовать следующим шагам:

  1. Откройте Терминал/SSH и введите node, чтобы начать практиковаться в написании кода.

  2. Верните замыкание, которое собирает все входные данные в функцию, которая принимает массив.

const collectInto =
  (fn) =>
  (...args) =>
    fn(args);
  1. Используйте функцию 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, чтобы улучшить свои навыки.