-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfunctions
More file actions
104 lines (61 loc) · 3.05 KB
/
functions
File metadata and controls
104 lines (61 loc) · 3.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
TypeScript é basicamente JavaScript com tipos, então tudo que você já sabe de funções
em JS continua valendo, mas com o bônus da tipagem.
//=====================================================================================================================================
🧩 1. Função básica com tipo:
function saudacao(nome: string): string {
return `Olá, ${nome}!`
}
Você tera
console.log(saudacao("Carlos"))
//=====================================================================================================================================
⚙️ 2. Função sem retorno (void):
function mostrarMensagem(mensagem: string): void {
console.log(mensagem)
}
void significa que a função não retorna nada.
//=====================================================================================================================================
🧠 3. Função com parâmetros opcionais:
function apresentar(nome: string, idade?: number): string {
return idade
? `${nome} tem ${idade} anos.`
: `${nome} preferiu não informar a idade.`
}
🔹 O ? indica que o parâmetro é opcional.
Se não for passado, o valor será undefined.
//=====================================================================================================================================
🔁 4. Arrow Function tipada:
const somar = (a: number, b: number): number => {
return a + b
}
console.log(somar(10, 5))
💡 A tipagem segue o mesmo padrão: (a: tipo, b: tipo): tipoDeRetorno.
//=====================================================================================================================================
🧱 5. Função com tipo definido (type ou interface)
Você pode criar um tipo para funções:
type Operacao = (x: number, y: number) => number
const multiplicar: Operacao = (x, y) => x * y
const dividir: Operacao = (x, y) => x / y
Isso é ótimo para reutilizar tipos de função em vários lugares.
//=====================================================================================================================================
⚡ 6. Função com valor padrão:
function mensagem(nome: string = "visitante"): string {
return `Bem-vindo, ${nome}!`
}
console.log(mensagem()) // "Bem-vindo, visitante!"
Se o parâmetro não for passado, ele assume o valor "visitante".
//=====================================================================================================================================
🧮 7. Função que aceita vários tipos (union types):
function mostrarId(id: string | number) {
console.log(`ID: ${id}`)
}
mostrarId(123)
mostrarId("abc")
💡 string | number → significa “string ou number”.
//=====================================================================================================================================
🧬 8. Função genérica (avançado, mas muito útil):
function identidade<T>(valor: T): T {
return valor
}
console.log(identidade<string>("Olá"))
console.log(identidade<number>(123))
🔹 T é um parâmetro de tipo genérico, útil quando o tipo depende do que for passado.