"O que é ASCII e como ele funciona com `charCodeAt()` e `fromCharCode()`?"

Em programação, entender como os caracteres são representados como números é fundamental. É aqui que o ASCII entra em cena. ASCII, abreviação de American Standard Code for Information Interchange, é um padrão de codificação de caracteres usado em computadores para representar texto. Ele atribui um valor numérico a cada caractere, que é universalmente reconhecido pelas máquinas. Nesta lição, exploraremos o que é ASCII, como ele funciona e como métodos JavaScript como charCodeAt() e fromCharCode() se relacionam com a codificação de caracteres. Embora as strings JavaScript usem Unicode (UTF-16) internamente, os valores ASCII correspondem aos primeiros 128 caracteres Unicode, por isso exemplos baseados em ASCII funcionam em JavaScript. ASCII é um sistema para codificar caracteres como letras, dígitos e símbolos em valores numéricos. Cada caractere é mapeado para um número específico. Por exemplo, a letra maiúscula A é representada pelo número 65 em ASCII, enquanto a minúscula a é representada por 97. Esta codificação permite que computadores armazenem e manipulem texto. O padrão ASCII cobre 128 caracteres incluindo:
  • Letras maiúsculas e minúsculas do inglês (A-Z, a-z).
  • Números (0-9).
  • Marcas de pontuação e símbolos comuns (!, @, # e assim por diante).
  • Caracteres de controle (como newline e tab).
Em JavaScript, você pode acessar o código numérico de um caractere usando o método charCodeAt(). Este método retorna a unidade de código UTF-16 do caractere em um índice especificado. Para os primeiros 128 caracteres, esse valor corresponde ao código ASCII. Vamos dar uma olhada em um exemplo:
let letter = "A";
console.log(letter.charCodeAt(0));  // 65
Neste exemplo, A é o primeiro caractere da string e chamar charCodeAt(0) retorna seu código numérico (que corresponde ao seu valor ASCII para caracteres latinos básicos), 65. Você também pode usar este método com outros caracteres para encontrar seus valores numéricos de código:
let symbol = "!";
console.log(symbol.charCodeAt(0));  // 33
Aqui, o código numérico para o ponto de exclamação ! é retornado como 33 (que corresponde ao seu valor ASCII). Enquanto charCodeAt() ajuda você a recuperar o código numérico de um caractere, o método fromCharCode() permite fazer o oposto: converter uma unidade de código UTF-16 (que corresponde ao ASCII para caracteres básicos) em seu caractere correspondente. Vamos ver isso em ação:
let char = String.fromCharCode(65);
console.log(char);  //  A
Neste exemplo, fromCharCode(65) converte o código numérico 65 (que corresponde ao valor ASCII para A) de volta para o caractere A. Outro exemplo seria converter o número 97 para sua letra minúscula correspondente:
let char = String.fromCharCode(97);
console.log(char);  // a
Esses métodos são particularmente úteis quando você precisa manipular ou comparar caracteres com base em seus valores numéricos de código. Por exemplo, você pode usar charCodeAt() para verificar se um caractere é maiúsculo, minúsculo ou um dígito comparando seu valor ASCII. Por outro lado, fromCharCode() pode ser usado para gerar dinamicamente caracteres a partir de seus códigos ASCII.
Este módulo não possui perguntas. Marque como concluído.