Compondo Funções Eficientemente em JavaScript

Beginner

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

Introdução

Neste laboratório, exploraremos o conceito de composição de funções em JavaScript. Aprenderemos como combinar múltiplas funções em uma única função que executa uma sequência de operações em ordem da esquerda para a direita. Através do uso da função pipeFunctions, descobriremos os benefícios da composição de funções e como ela pode simplificar nosso código e torná-lo mais legível.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 100%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Composição de Funções com Pipes

Para começar a praticar a codificação com pipes, abra o Terminal/SSH e digite node.

A função pipeFunctions realiza a composição de funções da esquerda para a direita usando Array.prototype.reduce() com o operador spread (...). A primeira função (mais à esquerda) pode aceitar um ou mais argumentos, enquanto as funções restantes devem ser unárias.

const pipeFunctions = (...fns) =>
  fns.reduce(
    (f, g) =>
      (...args) =>
        g(f(...args))
  );

Aqui está um exemplo de como usar pipeFunctions para criar uma nova função multiplyAndAdd5 que multiplica dois números e, em seguida, adiciona 5 ao resultado:

const add5 = (x) => x + 5;
const multiply = (x, y) => x * y;
const multiplyAndAdd5 = pipeFunctions(multiply, add5);
multiplyAndAdd5(5, 2); // 15

Neste exemplo, multiplyAndAdd5 é uma nova função que recebe dois argumentos, 5 e 2, e aplica multiply a eles primeiro, resultando em 10, e então aplica add5 ao resultado, resultando em 15.

Resumo

Parabéns! Você concluiu o laboratório de Funções Pipe. Você pode praticar mais laboratórios no LabEx para aprimorar suas habilidades.