4 of 17 menu

Confusión entre clave y elemento en el bucle for en JavaScript

Supongamos que tenemos un array con los nombres de los meses:

let arr = [ 'янв', 'фев', 'март', 'апр', 'май', 'июнь', 'июль', 'авг', 'сен', 'окт', 'ноя', 'дек' ];

Supongamos que en la variable month se almacena el número del mes actual:

let month = 10;

Mostremos todos los meses usando un bucle, y al mismo tiempo mostremos el mes actual en cursiva.

Cierto programador ya resolvió esta tarea, sin embargo, se equivocó y no prestó atención al hecho de que en la variable month se almacena el número del mes, y no su nombre:

for (let i = 0; i < arr.length; i++) { if (month === arr[i]) { // el error está aquí document.write('<i>' + arr[i] + '</i>'); } else { document.write(arr[i]); } document.write('<br>'); }

Nuestro programador compara el elemento del array con la variable month. ¡Pero en esta variable se almacena el número del mes, y no su nombre!

Para que el código funcione correctamente, se debe comparar month con el número del mes, es decir, con el valor del contador i:

for (let i = 0; i < arr.length; i++){ if (month === i) { // corregimos el error document.write('<i>' + arr[i] + '</i>'); } else { document.write(arr[i]); } document.write('<br>'); }
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