Hoy vamos a resolver un ejercicio de JavaScript. Se trata de ordenar las letras de una cadena, o de ordenar una palabra en orden alfabético. El problema dice así:
Escribe una función JavaScript que devuelva una cadena pasada con letras en orden alfabético.
Cadena de ejemplo: parzibyte
Salida esperada: abeiprtyz
Veamos cómo hacer esto con JS.
Lo que tenemos que hacer es separar la cadena y convertirla a un arreglo para tener un array de sus letras.
Cuando tengamos ese arreglo ya podemos aplicarle cualquier método de ordenamiento, pues podemos comparar las cadenas lexicográficamente.
Afortunadamente JavaScript ya posee un método para ordenar un arreglo, mismo al que podemos invocar con sort
; aunque si tú quieres puedes implementar tu propio método para ordenar arreglos.
Entonces básicamente: convertimos la palabra a arreglo, lo ordenamos y volvemos a unir ese arreglo.
Lo que vamos a hacer es separar la cadena con split. Luego invocar a sort
para ordenar el arreglo y finalmente invocar a join
para unir ese arreglo como cadena. Queda así:
const cadenaConLetrasOrdenadas = cadena => {
// https://parzibyte.me/blog
// Convertir a arreglo
const cadenaComoArreglo = cadena.split("");
// Ordenar
cadenaComoArreglo.sort();
// Volver a convertir a cadena
const cadenaOrdenada = cadenaComoArreglo.join("");
return cadenaOrdenada;
};
Te repito que puedes remplazar a sort
con un algoritmo de ordenamiento de tu preferencia. El modo de uso es el siguiente:
const cadenaConLetrasOrdenadas = cadena => {
// https://parzibyte.me/blog
// Convertir a arreglo
const cadenaComoArreglo = cadena.split("");
// Ordenar
cadenaComoArreglo.sort();
// Volver a convertir a cadena
const cadenaOrdenada = cadenaComoArreglo.join("");
return cadenaOrdenada;
};
const palabra = "parzibyte";
const conLetrasOrdenadas = cadenaConLetrasOrdenadas(palabra);
console.log("Palabra original: '%s'. Palabra con letras ordenadas: '%s'", palabra, conLetrasOrdenadas);
Al ejecutar el código, la salida es correcta. Obviamente tú puedes cambiar la palabra por cualquier otra para probar.
Lo siguiente lo ejecuto con node, pero igual se ejecuta en el navegador:
Y así es como ordenamos las letras dentro de una palabra. Si te gusta este lenguaje te dejo más sobre Programación JS en mi blog.
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
En este artículo te voy a enseñar cómo usar un "top level await" esperando a…
Esta web usa cookies.