¿Cómo codificar correctamente una URL en JavaScript? encodeURI vs encodeURIComponent
```html
¡Hola a todos! Soy nuevo en JavaScript y me encontré con un problema al trabajar con URLs. Necesito enviar una solicitud al servidor con parámetros que contienen caracteres especiales y cirílico. Por ejemplo, tengo una cadena de búsqueda: "кофе & чай / рецепты?".
Probé usar `encodeURI()`, pero noté que algunos caracteres no se codifican. Luego encontré `encodeURIComponent()`, pero ahora no entiendo qué método usar cuándo.
Aquí hay un ejemplo de mi código que no funciona como se esperaba:
```javascript
const baseUrl = "https://api.example.com/search";
const query = "кофе & чай / рецепты?";
const fullUrl = baseUrl + "?q=" + encodeURI(query);
console.log(fullUrl);
// Resultado: https://api.example.com/search?q=%D0%BA%D0%BE%D1%84%D0%B5%20&%20%D1%87%D0%B0%D0%B9%20/%20%D1%80%D0%B5%D1%86%D0%B5%D0%BF%D1%82%D1%8B?
// Se ve que & y ? quedaron sin codificar
```
Probé usar `encodeURIComponent`:
```javascript
const encodedQuery = encodeURIComponent(query);
console.log(encodedQu
```