Menu
CoddyTech

Definindo Tipos de Funções

Parte da seção Introdução ao TypeScript do Journey de JavaScript da Coddy. Lição 28 de 73.

O TypeScript permite que você crie um alias de tipo para a assinatura de uma função, que funciona como um modelo que as funções devem seguir.

Um alias de tipo de função define a forma de uma função usando a palavra-chave type. A sintaxe mostra os tipos de parâmetros entre parênteses seguidos por uma seta e o tipo de retorno:

type MathOperation = (a: number, b: number) => number;

const add: MathOperation = (a, b) => {
  return a + b;
};

const multiply: MathOperation = (a, b) => {
  return a * b;
};

Neste exemplo, MathOperation é um alias de tipo que descreve qualquer função que recebe dois números e retorna um número. Tanto add quanto multiply estão em conformidade com este tipo, garantindo consistência em toda a sua base de código.

challenge icon

Desafio

Fácil

Crie um alias de tipo chamado StringProcessor para uma função que recebe um único parâmetro string e retorna um string.

Crie um alias de tipo chamado NumberCalculator para uma função que recebe dois parâmetros number e retorna um number.

Crie um alias de tipo chamado BooleanChecker para uma função que recebe um parâmetro string e retorna um boolean.

Agora implemente as seguintes funções que estão em conformidade com esses aliases de tipo:

  • Crie uma função chamada toUpperCase do tipo StringProcessor que converte a string de entrada para letras maiúsculas
  • Crie uma função chamada addPrefix do tipo StringProcessor que adiciona o prefixo "Processed: " à string de entrada
  • Crie uma função chamada divide do tipo NumberCalculator que divide o primeiro número pelo segundo número
  • Crie uma função chamada power do tipo NumberCalculator que eleva o primeiro número à potência do segundo número (use Math.pow)
  • Crie uma função chamada isEmpty do tipo BooleanChecker que retorna true se a string tiver comprimento 0; caso contrário, false
  • Crie uma função chamada startsWithA do tipo BooleanChecker que retorna true se a string começar com a letra "A" (diferencia maiúsculas de minúsculas); caso contrário, false

Teste suas funções chamando-as com os seguintes valores e imprimindo os resultados:

  • Chame toUpperCase com "hello world"
  • Chame addPrefix com "data"
  • Chame divide com 20 e 4
  • Chame power com 3 e 4
  • Chame isEmpty com ""
  • Chame startsWithA com "Apple"

Imprima cada resultado em uma linha separada, na ordem especificada acima.

Experimente você mesmo

// TODO: Criar aliases de tipo aqui
// StringProcessor, NumberCalculator, BooleanChecker

// TODO: Implementar as funções aqui
// toUpperCase, addPrefix, divide, power, isEmpty, startsWithA

// TODO: Testar suas funções e imprimir os resultados
// Chame cada função com os valores especificados e imprima os resultados
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Introdução ao TypeScript

Pratique por conta própria: Playground de TypeScript