Accesarea cifrelor unui număr în JavaScript
Să presupunem că acum avem stocat în variabilă
un număr fără ghilimele, ci doar un număr. În acest
caz, încercarea de a accesa un caracter individual
va returna undefined, deoarece
o astfel de accesare funcționează doar pentru șiruri de caractere:
let test = 12345;
alert(test[0]); // va returna undefined
Pentru a rezolva problema, să transformăm numărul nostru într-un șir de caractere:
let test = String(12345); // șir de caractere
alert(test[0]); // va afișa '1' - funcționează
Să presupunem că acum dorim să găsim suma primelor două cifre:
let test = String(12345); // șir de caractere
alert(test[0] + test[1]); // va afișa '12' - adună ca șiruri de caractere
Să adăugăm funcția Number pentru ca
caracterele să fie adunate ca numere:
let test = String(12345); // șir de caractere
alert(Number(test[0]) + Number(test[1])); // va afișa 3
Reamintesc că o problemă de acest gen va apărea doar la adunare. La înmulțire, de exemplu, conversia în numere poate să nu fie efectuată:
let test = String(12345); // șir de caractere
alert(test[1] * test[2]); // va afișa 6
Se dă numărul 12345. Aflați suma cifrelor
acestui număr.
Se dă numărul 12345. Aflați produsul
cifrelor acestui număr.
Se dă numărul 12345. Schimbați ordinea cifrelor
acestui număr în ordine inversă.