Converter Função para Variádica

Beginner

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

Introdução

Neste laboratório, exploraremos como converter uma função que aceita um array em uma função variádica usando JavaScript. Conseguiremos isso criando uma closure (fechamento) que coleta todas as entradas em uma função que aceita um array. Ao final do laboratório, você terá uma melhor compreensão de como manipular funções em JavaScript para torná-las mais versáteis e adaptáveis a diferentes casos de uso.

Convertendo uma Função para uma Função Variádica

Para converter uma função que aceita um array em uma função variádica, você pode seguir estes passos:

  1. Abra o Terminal/SSH e digite node para começar a praticar a codificação.

  2. Retorne uma closure (fechamento) que coleta todas as entradas em uma função que aceita um array.

const collectInto =
  (fn) =>
  (...args) =>
    fn(args);
  1. Use a função collectInto para converter uma função em uma função variádica.
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] (after about 2 seconds)

Isso permitirá que você aceite qualquer número de argumentos em sua função e os colete em um array para processamento posterior.

Resumo

Parabéns! Você concluiu o laboratório Convert Function to Variadic. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.