10 of 17 menu

Fel avsaknad av flagga i funktion i JavaScript

Låt oss säga att vi vill skapa en funktion, som som parameter kommer att ta en siffra och ett nummer, och kontrollera om den givna siffran finns i numret:

function func(needle, num) { // koden kommer att vara här }

Så här kommer vi att använda vår funktion:

console.log(func('3', '12345')); // kommer att skriva ut true

En programmerare skrev en lösning på detta problem:

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

Denna lösning fungerar dock inte korrekt. Anledningen är att i loopen finns ett villkor, där i den första iterationen antingen en return kommer att exekveras, eller den andra, vilket resulterar i avslut av både loopen och funktionen.

Låt oss skriva om vår kod på ett korrekt sätt, med hjälp av implicita flaggor i funktioner:

function func(needle, num) { for (let digit of num) { if (digit === needle) { return true; } } return false; }
Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa