10 of 17 menu

Erro de ausência de flag em função em JavaScript

Suponha que queremos criar uma função que receberá como parâmetro um dígito e um número, e verificará se o dígito especificado está presente no número:

function func(needle, num) { // o código estará aqui }

É assim que usaremos nossa função:

console.log(func('3', '12345')); // exibirá true

Um certo programador escreveu a solução para este problema:

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

Esta solução, no entanto, funciona incorretamente. O problema é que no loop há uma condição, na qual na primeira iteração será executado ou um return, ou o outro, realizando assim a saída tanto do loop quanto da função.

Vamos reescrever nosso código da forma correta, usando flags implícitos em funções:

function func(needle, num) { for (let digit of num) { if (digit === needle) { return true; } } return false; }
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar