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.

Explicación del algoritmo

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.

Palabra más larga de cadena en JS

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:

Palabra más larga de una cadena en JavaScript

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.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto