⊗jsPmLpCn 157 of 505 menu

Instrucțiunea continue în JavaScript

Există și instrucțiunea continue, care pornește o nouă iterație a ciclului. Această instrucțiune poate fi uneori utilă pentru simplificarea codului, deși aproape întotdeauna sarcina poate fi rezolvată și fără ea. Să ne uităm la un exemplu practic.

Să presupunem că avem o matrice cu numere. Să o parcurgem cu un ciclu și numerele care se împart la 2, le vom ridica la pătrat și le vom afișa în consolă, iar numerele care se împart la 3, le vom ridica la cub și le vom afișa în consolă. Iată soluția sarcinii descrise:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 === 0) { result = elem * elem; console.log(result); } else if (elem % 3 === 0) { result = elem * elem * elem; console.log(result); } }

După cum vedeți, linia console.log(result) se repetă de două ori. Să o scoatem în afara if, astfel:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 === 0) { result = elem * elem; } else if (elem % 3 === 0) { result = elem * elem * elem; } console.log(result); // am mutat afișarea în afara condiției }

Totuși, acum scriptul nostru funcționează puțin diferit: se va întâmpla ca și pentru elementele obișnuite, neprocesate prin if-ul nostru, să se execute afișarea variabilei result în consolă, ceea ce conform condițiilor sarcinii noastre nu avem nevoie.

Să corectăm problema, adăugând la if-ul nostru încă o condiție else, care se va activa pentru elementele care nu se împart la 2 și 3, și vom apela acolo instrucțiunea continue, care ne va arunca imediat la o nouă iterație a ciclului:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 == 0) { result = elem * elem; } else if (elem % 3 == 0) { result = elem * elem * elem; } else { continue; // vom trece la o nouă iterație a ciclului } console.log(result); // se va executa dacă se împarte la 2 sau 3 }

Scrieți un ciclu care va afișa doar numerele pare de la 1 la 100, omițând cele impare cu ajutorul continue.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge