Parola più lunga in JavaScript

Data una stringa, composta da una quantità indefinita di parole, trovare la parola più lunga in JavaScript.

In questa breve lezione propongo varie soluzioni all’algoritmo proposto, al fine di presentare diversi ragionamenti logici.

Parola più lunga in JavaScript – prima soluzione

Partiamo quindi da una semplice frase di esempio:

const frase = 'Fare coding è divertente.';

Dopo, con il metodo split, creiamo un array con ciascuna parola. Ricordiamo dunque che al metodo split passiamo uno spazio vuoto per definire la suddivisione delle parole in un array.

const parole = frase.split(' ');
console.log(parole);

Nella console del nostro browser vedremo come risultato un array di 4 elementi: (4) [“Fare”, “coding”, “è”, “divertente.”]

Adesso dobbiamo determinare quali delle seguenti parole è più lunga. Quindi inizializziamo il valore massimo alla prima parola e dopo, con un ciclo for controlliamo se la lunghezza delle altre parole è maggiore di quella inziale. Se la condizione si verifica sostituiamo il valore massimo, altrimenti non facciamo nulla.

let max = parole[0];

for(let i = 0; i < parole.length; i++){
  if(parole[i].length > max.length ){
    max = parole[i];
  }
}

console.log('la parola più lunga della frase è: ' + max);

Parola più lunga in JavaScript – seconda soluzione

Analizziamo l’algoritmo per cercare un’altra possibile soluzione. Infatti ci viene in mente che se ordiniamo l’array in modo che gli elementi che hanno una lunghezza maggiore siano posizionati per primi, allora basterà estrapolare il primo elemento per determinare la parola più lunga.

Per fare ciò utilizzeremo quindi il metodo sort sugli array e gli passeremo come parametro una funzione, come abbiamo fatto nella seguente lezione: sort in JavaScript.

const frase = 'Fare coding è divertente';
const parole = frase.split(' ');

const paroleLunga = parole.sort(function(a, b) {
  return  b.length - a.length;
});

console.log(paroleLunga[0]);

Con la funzione passata all’algoritmo sort realizziamo un ordinamento in base alla lunghezza decrescente di ciascuna parola. Quindi per ottenere la parola più lunga basterà semplicemente stampare il primo elemento.

Conclusioni

Chiaramente queste sono solo delle possibili soluzioni alla ricerca della parola più lunga in JavaScript, proponete pure la vostra soluzione.

Alcuni link utili

Tutorial JavaScript

Come utilizzare JavaScript alert

Utilizzare JavaScript prompt

Variabili in JavaScript

Gioco indovina numero in JavaScript

Gioco della morra cinese in JavaScript

Semplice quiz utilizzando gli array

Come realizzare il gioco dei dadi online

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *