⊗jsPmCdExND 139 of 505 menu

Kontrola číslic čísla v JavaScripte

Majme dané číslo:

let num = 12345;

Pokus o prístup k prvému znaku čísla povedie k neočakávanému správaniu:

let num = 12345; if (num[0] == 1) { console.log('+++'); } else { console.log('---'); // spustí sa toto }

Ako už viete, problém je v tom, že je možné pristupovať k znakom reťazca, ale nie je možné - k čísliciam čísla:

let num = 12345; console.log(num[0]); // vypíše undefined

Na vyriešenie problému pretransformujme naše číslo na reťazec:

let num = 12345; let str = String(num); if (str[0] == 1) { console.log('+++'); // spustí sa toto } else { console.log('---'); }

Nie je nevyhnutné zavádzať novú premennú, je možné použiť [0] priamo k výsledku funkcie String:

let num = 12345; if (String(num)[0] == 1) { console.log('správne'); // vypíše 'správne' } else { console.log('nesprávne'); }

Majme teraz, že chceme skontrolovať prvú číslicu či sa rovná 1, alebo 2. Napíšme zodpovedajúci kód:

let num = 12345; if (String(num)[0] == 1 || String(num)[0] == 2) { console.log('+++'); } else { console.log('---'); }

V tomto prípade vychádza, že konštrukcia String(num)[0] sa zopakuje dva krát. Je to, po prvé, dlhé, a po druhé, nie je optimálne, pretože dva krát transformujeme číslo na reťazec - druhý krát je to zbytočné, a zdroje programu sa na to míňajú.

Opravme problém:

let num = 12345; let first = String(num)[0]; if (first == 1 || first == 2) { console.log('+++'); } else { console.log('---'); }

Je dané celé číslo. Napíšte podmienku, ktorá skontroluje, či sa posledná číslica tohto čísla rovná nule.

Majme v premennej num uložené číslo. Určite, či je číslo párne alebo nepárne. Číslo bude párne, ak sa posledný znak rovná 0, 2, 4, 6 alebo 8, a nepárne v opačnom prípade.

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ť