// Reto: invertir una cadena (dar la vuelta al texto).
// Entrada: "hola"
// Salida esperada: "aloh"
// Solución 1: usando métodos de arreglos.
// Convertimos la cadena en un arreglo de caracteres, lo invertimos y lo volvemos a unir.
function invertir(texto) {
return texto.split("").reverse().join("");
}
// Solución 2: iterando la cadena de atrás hacia adelante.
// Útil para explicar la lógica "a mano" en una entrevista.
function invertirConBucle(texto) {
let resultado = "";
for (let i = texto.length - 1; i >= 0; i--) {
resultado += texto[i]; // agrega cada caracter empezando desde el final
}
return resultado;
}
console.log(invertir("hola")); // "aloh"
console.log(invertir("JavaScript")); // "tpircSavaJ"
console.log(invertirConBucle("mundo")); // "odnum"
console.log(invertirConBucle("")); // "" (caso límite: cadena vacía)
// Explicación:
// split("") separa cada caracter en un arreglo, reverse() lo invierte,
// y join("") lo vuelve a unir en una cadena. La versión con bucle hace lo
// mismo manualmente, iterando desde el último índice.
module.exports = { invertir, invertirConBucle };