Convertendo número para string em TypeScript: como fazer corretamente e sem erros?
Olá a todos! Comecei a estudar TypeScript recentemente e tive um problema ao converter um número para string. Em JavaScript comum, sempre usei algo como `String(123)` ou `(123).toString()`, mas no TypeScript me deparei com erros de tipo inesperados.
Aqui está um exemplo do meu código:
```typescript
const userId: number = 42;
const url: string = "/user/" + userId; // Erro: Type 'number' is not assignable to type 'string'
```
Eu esperava que o TypeScript convertesse automaticamente o número para string durante a concatenação, como o JavaScript faz, mas recebo um erro de compilação. Também tentei:
```typescript
const userId: number = 42;
const url: string = "/user/" + String(userId); // Funciona, mas está correto?
```
Estou interessado em algumas coisas:
1. Qual método é considerado correto no TypeScript para converter um número em string?
2. Existe diferença entre `String(value)` e `value.toString()`?
3. E quanto ao operador `+` e template strings? Eles se comportam de maneira diferente com tipos?