Conversión de número a string en TypeScript: ¿cómo hacerlo correctamente y sin errores?
¡Hola a todos! Acabo de empezar a aprender TypeScript y me encontré con un problema al convertir un número a string. En JavaScript normal siempre usaba algo como `String(123)` o `(123).toString()`, pero en TypeScript me encontré con errores de tipo inesperados.
Aquí hay un ejemplo de mi código:
```typescript
const userId: number = 42;
const url: string = "/user/" + userId; // Error: Type 'number' is not assignable to type 'string'
```
Esperaba que TypeScript convirtiera automáticamente el número a string durante la concatenación, como hace JavaScript, pero recibo un error de compilación. También probé:
```typescript
const userId: number = 42;
const url: string = "/user/" + String(userId); // Funciona, ¿pero es correcto?
```
Me interesan varias cosas:
1. ¿Qué método se considera correcto en TypeScript para convertir un número a string?
2. ¿Hay alguna diferencia entre `String(value)` y `value.toString()`?
3. ¿Qué pasa con el operador `+` y las template strings? ¿Se comportan de manera diferente con respecto a la conversión de tipos?