Att komma åt siffror i ett nummer i JavaScript
Låt oss nu anta att vi har ett nummer lagrat i en variabel,
inte ett nummer inom citattecken, utan bara ett nummer. I det här
fallet kommer ett försök att komma åt dess enskilda
tecken att returnera undefined, eftersom
sådan åtkomst endast fungerar för strängar:
let test = 12345;
alert(test[0]); // kommer att returnera undefined
För att lösa problemet omvandlar vi vårt nummer till en sträng:
let test = String(12345); // sträng
alert(test[0]); // visar '1' - allt fungerar
Låt oss nu säga att vi vill hitta summan av de första två siffrorna:
let test = String(12345); // sträng
alert(test[0] + test[1]); // visar '12' - adderar som strängar
Lägg till funktionen Number för att
tecknen ska adderas som nummer:
let test = String(12345); // sträng
alert(Number(test[0]) + Number(test[1])); // visar 3
Jag påminner om att problem av detta slag uppstår endast vid addition. Vid multiplikation, till exempel, behöver man inte omvandla till nummer:
let test = String(12345); // sträng
alert(test[1] * test[2]); // visar 6
Givet talet 12345. Hitta summan av siffrorna
i detta tal.
Givet talet 12345. Hitta produkten av
siffrorna i detta tal.
Givet talet 12345. Ordna om siffrorna
i detta tal i omvänd ordning.