Unicode, charCodeAt() jak to rozwiązac?

0

Witam.
W języku JavaScript wyróżniamy funkcję np. lancuch.charCodeAt(index), która wraca zakodowany w formacie Unicode znak znajdujący się na podanej pozycji (index) w ciągu.

Mając słowo "be" po konwersji wygląda na "9898".
Odpowiada za to procedurka:

for(i = 0; i < slowo.length; i++) 
{
slowko *= slowo.charCodeAt(i);
}

Czy ktoś może mi:

  1. Opisać na jakiej zasadzie charCodeAt koduje te znaki
  2. Co znaczy operator *= w tym przykładzie
  3. W jaki sposób można odkodować "9898" z powrotem na "be"
  4. Jak rozwiązać ten problem (kodowania i dekodowania) ta metoda w Delphi. Nie mam pojecia co użyć zamiast charCodeAt() a algorytmu nie znam. Na necie pisze tylko o kodowaniu w Wordach itp. a program Gżegżółka na nic mi się zdał.

Pozdrawiam
gw

0

nie rozumiem za bardzo, ale charCodeAt zwraca kod znaku, nie koduje w żaden sposób znaków.

slowo.charAt(i);

to w delphi:

Ord(slowo[i+1]);

Operator a*=b to to samo co w delphi a:=a*b;
odkodować z powrotem czegoś takiego się raczej nie da - jest to IMO jedynie suma kontrolna ciągu znaków i taki sam kod ja "be" zwróci pewnie też ciąg znaków "eb"
"Odkodować" się nie da tego bo to tak jakbyś w matematyce chciał odkodować że ktoś pisząc 8 miał na myśli wynik 2x4 - można natomiast wypisać szereg słówek mających identyczną sumę kontrolną

BTW podany kod sam jako taki nie działa :]

//działa jeśli przed pętlą dasz "slowo = 1" - M
//fakt :] - ale bardziej "slowko = 1" niż "slowo"

1 użytkowników online, w tym zalogowanych: 0, gości: 1