10 of 17 menu

Error de falta de bandera en una función en JavaScript

Supongamos que queremos crear una función que tome un dígito y un número como parámetros, y verifique si el dígito dado está presente en el número:

function func(needle, num) { // aquí irá el código }

Así es como usaremos nuestra función:

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

Un programador escribió la solución a este problema:

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

Sin embargo, esta solución no funciona correctamente. El problema es que en el ciclo se escribió una condición, en la cual, en la primera iteración, se ejecutará uno u otro return, realizando así una salida tanto del ciclo como de la función.

Reescribamos nuestro código de forma correcta, utilizando banderas implícitas en funciones:

function func(needle, num) { for (let digit of num) { if (digit === needle) { return true; } } return false; }
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar