10 of 17 menu

Errore Assenza di Flag nelle Funzioni in JavaScript

Supponiamo di voler creare una funzione che accetti come parametri una cifra e un numero, e verifichi se la cifra specificata è presente nel numero:

function func(needle, num) { // qui andrà il codice }

Ecco come utilizzeremo la nostra funzione:

console.log(func('3', '12345')); // restituirà true

Un qualche programmatore ha scritto questa soluzione al problema:

function func(needle, num) { for (let digit of num) { if (digit === needle) { return true; } else { return false; } } }

Tuttavia, questa soluzione non funziona correttamente. Il fatto è che nel ciclo è scritta una condizione, in cui già alla prima iterazione verrà eseguito o un return, o l'altro, effettuando così l'uscita sia dal ciclo che dalla funzione.

Riscriviamo il nostro codice in modo corretto, utilizzando flag impliciti nelle funzioni:

function func(needle, num) { for (let digit of num) { if (digit === needle) { return true; } } return false; }
Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta