Para que serve o ponto de interrogação nos parâmetros de funções TypeScript?
Olá a todos! Recentemente comecei a estudar TypeScript e me deparei com uma construção estranha nos parâmetros de funções. Vejo que às vezes colocam um ponto de interrogação antes dos dois pontos e do tipo do parâmetro. Por exemplo:
```typescript
function greet(name?: string) {
return `Hello, ${name || 'Guest'}!`;
}
```
Eu entendo que `: string` significa que o parâmetro deve ser uma string. Mas o que o `?` faz antes disso? Tentei chamar a função com e sem parâmetro — parece funcionar de ambos os jeitos. Mas se eu remover o ponto de interrogação, o TypeScript começa a reclamar quando chamo `greet()` sem argumento.
O que exatamente significa esse ponto de interrogação? É alguma característica do JavaScript ou apenas do TypeScript? E há diferença entre `name?: string` e `name: string | undefined`? Ficarei grato por uma explicação detalhada com exemplos, porque na documentação está complicado, e na prática quero entender como usar corretamente.
Desde já, obrigado!
<<>>
O que significa o ponto de interrogação no parâmetro
No answers yet.
Faça login para deixar uma resposta