10 of 17 menu

Fout ontbrekende vlag in functie in JavaScript

Stel we willen een functie maken, die als parameter een cijfer en een getal accepteert, en controleert of het opgegeven cijfer in het getal voorkomt:

function func(needle, num) { // hier komt de code }

Zo zullen we onze functie gebruiken:

console.log(func('3', '12345')); // geeft true weer

Een programmeur schreef deze oplossing voor het probleem:

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

Deze oplossing werkt echter niet correct. Het probleem is dat in de lus een voorwaarde staat, waarin in de eerste iteratie of de ene return, of de andere wordt uitgevoerd, waardoor er een uitgang is uit zowel de lus als de functie.

Laten we onze code op de juiste manier herschrijven, met behulp van impliciete vlaggen in functies:

function func(needle, num) { for (let digit of num) { if (digit === needle) { return true; } } return false; }
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren