JavaScript é sensível ao caso:
Palavras-chave, variáveis, nomes de funções e todos os identificadores devem ser consistentes na parte superior e inferior (geralmente as escrevemos em minúsculas), o que é muito diferente do método de escrita de vários estilo C# quando aprendi pela primeira vez.
Por exemplo: (aqui pegamos as variáveis str e str como exemplos)
A cópia do código é a seguinte:
var str = 'abc';
var str = 'abc';
alerta (str); // saída abc
Se STR e STR forem a mesma variável, alerta (STR);, o resultado da saída deve ser ABC em vez de ABC, como mostrado na figura acima. Isso apenas mostra que o JavaScript é sensível ao minúsculo.
Sequência de escape unicode
A aparência dos conjuntos de caracteres Unicode é compensar a limitação de que o código ASCII pode representar apenas 128 caracteres. Se queremos exibir caracteres chineses e japoneses na vida cotidiana, é óbvio que as ASCII é impossível. Portanto, o Unicode é um superconjunto de ASCII e Latin-1. Antes de tudo, os programas JavaScript são escritos com conjuntos de caracteres Unicode, mas eles não podem ser totalmente exibidos ou inseridos em algum hardware e software de computador. Para resolver esse fenômeno, o JavaScript define uma sequência especial, que usa 6 caracteres ASCII para representar qualquer código interno Unicode de 16 bits. Essa sequência especial é chamada coletivamente de sequência de escape Unicode, que é prefixada com /u e seguida por 4 números hexadecimais.
por exemplo:
A cópia do código é a seguinte:
var str = 'caf/u00e9';
var str = 'Café';
alerta (str+''+str); // Você pode ver que a tela é o mesmo efeito.
alerta (str === str); // saída true
Mas devemos observar que o Unicode permite que vários métodos codifiquem o mesmo caractere e use o exemplo acima do É Escape para ilustrar:
É:
1. Pode ser representado por caracteres unicode /u00E9
2. Também pode ser representado por e/u0301 (caractere de entonação)
A cópia do código é a seguinte:
var str = 'caf/u00e9';
var str = 'Cafe/U0301';
alerta (str+''+str); // Como mostrado na figura abaixo, os resultados em saída por str e str são os mesmos
alerta (str === str); // Os resultados são os mesmos, mas suas representações de codificação binária são completamente diferentes, então a saída é falsa
Embora os resultados exibidos no editor de texto sejam os mesmos, suas representações de codificação binária são completamente diferentes, e as linguagens de programação acabarão sendo convertidas em códigos mecânicos de computador (codificações binárias) da plataforma local. Os computadores só podem saber os resultados comparando as codificações binárias; portanto, o resultado final de sua comparação só pode ser falso
Portanto, esta é a melhor explicação para "Unicode permite que vários métodos codifiquem o mesmo personagem" porque o padrão Unicode define um formato de codificação preferido para todos os caracteres para facilitar a conversão do texto em sequências de escape unicode em um formato unificado para comparação apropriada
Tome é como exemplo novamente:
É a mesma coisa comparar o Facé com o É no Café?
Somente comparando o És em Facé e Café é convertido em /u00e9 ou ambos são convertidos em e /u0301 para comparar o És em Facé e Café