What this tool does
It turns text into numbers: for each character you type, it reports the underlying code point in several bases so you can see exactly how the text is encoded.
How it works
The input string is split into characters with Array.from, which iterates by Unicode code point rather than by 16-bit code unit. For each character the tool calls codePointAt(0) to get its numeric value, then formats that value in decimal, hexadecimal, octal, and the canonical U+ notation. Characters with a code point of 127 or less are plain ASCII; anything higher is flagged as non-ASCII because no ASCII code exists for it.
Reading code points (rather than UTF-16 code units) matters for characters above U+FFFF, such as emoji: a naive per-code-unit approach would split them into surrogate pairs and report two wrong numbers.
Example and notes
Typing Gé@ yields three rows: G is decimal 71 (U+0047), é is decimal 233 (U+00E9, flagged non-ASCII), and @ is decimal 64 (U+0040). For codes 0–127 the decimal value is both the ASCII code and the Unicode code point.
The copy button gives you the space-separated decimal codes for the whole string, which pairs naturally with the reverse code-to-character tool. Spaces and other whitespace are decoded too — a space is always code 32.