Kod liczbowy znaku - charCodeAt
Jak pobrać kod liczbowy określonego znaku w tekście?
String.prototype.charCodeAt() String.prototype.charCodeAt(pos)
- Parametry:
Number
pos - pozycja w tekście (liczba naturalna licząc od 0)- Wartość:
Number
- kod liczbowy znaku o podanej pozycji w postaci 16-bitowej liczby naturalnej (0 - 65535)
Każdy pojedynczy znak tekstu jest zapisany wewnętrznie w postaci odpowiadającego mu kodu liczbowego. System przechowuje pełną mapę tych kodów, dzięki czemu wiadomo, że np. literze 'a' odpowiada kod 97, 'b' - 98, 'c' - 99 itd. W naszym programie możemy mieć potrzebę jawnie przekształcić znak w postaci tekstu, na odpowiadający mu taki kod liczbowy. Możemy to zrobić właśnie za pomocą funkcji String.prototype.charCodeAt
.
Pierwszy znak w tekście ma pozycję 0. Jeżeli podano pozycję poza ograniczonym zakresem (mniejszą od zera albo większą lub równą długości tekstu), zwracana jest wartość NaN.
Funkcja działa odwrotnie do String.fromCharCode.
Aby sprawdzić, czy funkcja nie zwróciła przypadkiem niepoprawnego wyniku, użyj funkcji isNaN.
Przykład String.prototype.charCodeAt
"abc".charCodeAt(); // 97 "abc".charCodeAt(0); // 97 "abc".charCodeAt(" +0.9 "); // 97 "abc".charCodeAt(null); // 97 "abc".charCodeAt(undefined); // 97 "abc".charCodeAt(NaN); // 97 "abc".charCodeAt("test"); // 97 "abc".charCodeAt(false); // 97 "abc".charCodeAt(true); // 98 "abc".charCodeAt(-1); // NaN "abc".charCodeAt(3); // NaN "abc".charCodeAt(Infinity); // NaN "".charCodeAt(0); // NaN