Palabra más larga de una cadena en JavaScript
Hoy vamos a ver cómo encontrar la palabra más larga (con mayor longitud) dentro de una oración, cadena o string usando JavaScript.
Es decir, a partir de una simple cadena vamos a encontrar la subcadena más larga que exista dentro de la misma.
El problema dice así:
Escribe una función JavaScript que acepte una cadena como parámetro y encuentre la palabra más larga dentro de la cadena.
Para ello vamos a usar split y un simple algoritmo que recorre las palabras y va comparando.
Primero convertimos la cadena a arreglo, ya te dije cómo anteriormente.
Luego definimos la palabra más larga, que al inicio de todo será la primera palabra del arreglo. Esto es solo para inicializarla, solo estamos intuyendo; ya que la variable debe tener un valor inicialmente.
Ahora recorremos las palabras. Por cada palabra comparamos si la misma es más larga que la cadena más larga hasta el momento, y en caso de que sí entonces ahora la palabra más larga hasta el momento es la palabra actual.
Al final de todo regresamos la palabra más larga, que va a contener la más larga de todo el arreglo pues para ese punto ya habremos terminado de recorrerlo.
Por cierto, para comparar la longitud de la cadena simplemente vamos a comparar la propiedad length
.
Veamos el código, queda como se ve a continuación:
const palabraMasLarga = cadena => {
// https://parzibyte.me/blog
// Separar por espacios
const separadaPorEspacios = cadena.split(" ");
// Suponer que la palabra más larga es la primera, para poder inicializar la variable
let palabraMasLarga = separadaPorEspacios[0];
// Recorrer e ir comparando
for (const palabra of separadaPorEspacios) {
if (palabra.length >= palabraMasLarga.length) {
palabraMasLarga = palabra;
}
}
return palabraMasLarga;
};
Primero la separamos para convertirla en arreglo, luego inicializamos la variable de la palabra más larga. Ahora recorremos y comparamos en la línea 8 hasta la 12..
El modo de uso es como se ve a continuación:
const palabraMasLarga = cadena => {
// https://parzibyte.me/blog
// Separar por espacios
const separadaPorEspacios = cadena.split(" ");
// Suponer que la palabra más larga es la primera, para poder inicializar la variable
let palabraMasLarga = separadaPorEspacios[0];
// Recorrer e ir comparando
for (const palabra of separadaPorEspacios) {
if (palabra.length >= palabraMasLarga.length) {
palabraMasLarga = palabra;
}
}
return palabraMasLarga;
};
const oracion = "Me gusta programar en JavaScript aprendiendo en el blog de Parzibyte";
const palabra = palabraMasLarga(oracion);
console.log("La oración es: ");
console.log(oracion);
console.log("La palabra más larga es: ");
console.log(palabra);
Al ejecutarla, el resultado es correcto:
Y así es como podemos obtener la cadena más larga de una oración o string en JavaScript. Todo esto funciona en el navegador o en el servidor con Node.
Para terminar te dejo con más tutoriales de JavaScript en mi blog.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.