⊗jsSpOtAC 279 of 294 menu

Optimalizácia prevodu na pole v JavaScripte

Nie vždy je potrebné rozdeliť reťazec na pole, aby sme s ním niečo urobili. Pozrime sa na príklad. Majme nasledujúci kód:

let num = 123456789; let arr = String(num).split(''); let sum = 0; for (let elem of arr) { sum += +elem; } console.log(sum);

Prečo je tu rozdelenie na pole zlé? Pretože po prvé, na rozdelenie na pole sa míňajú procesorové zdroje, po druhé, výsledné pole bude zaberať miesto v operačnej pamäti (a to bude väčšie ako miesto, ktoré zaberá samotný reťazec).

Veď pomocou for-of môžeme prechádzať nielen polia, ale aj reťazce:

let num = 123456789; let str = String(num); let sum = 0; for (let char of str) { sum += +char; } console.log(sum);

Nasledujúci kód hľadá súčet číslic zadaného čísla v inpute. Vykonajte optimalizáciu:

<input> let input = document.querySelector('input'); input.addEventListener('blur', function() { let digits = input.value.split(''); let sum = 0; for (let digit of digits) { sum += +digit; } console.log(sum); });

Nasledujúci kód počíta počet písmen v reťazci. Vykonajte optimalizáciu:

let str = 'abcaab'; let arr = str.split(''); let i = 0; for (let elem of arr) { if (elem == 'a') { i++; } } console.log(i);

Nasledujúci kód kontroluje prítomnosť symbolu v reťazci. Vykonajte optimalizáciu:

let str = 'abcaab'; let arr = str.split(''); console.log(arr.includes('a'));
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť