| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/String/charCodeAt | [Back] [Original] |
Get to know MDN better
Esta pgina foi traduzida do ingls pela comunidade. Saiba mais e junte-se comunidade MDN Web Docs.
This feature is well established and works across many devices and browser versions. Its been available across browsers since julho de 2015.
O mtodo charCodeAt() retorna um nmero inteiro entre 0 e 65535 que representa a unidade de cdigo UTF-16 no ndice fornecido. A unidade de cdigo UTF-16 corresponde ao ponto de cdigo Unicode para pontos de cdigos representveis em uma nica unidade de cdigo UTF-16, mas tambm pode ser a primeira unidade de cdigo de um par substituto no representvel em uma nica unidade de cdigo UTF-16. Po exemplo: pontos de cdigo Unicode > (0x10000). Se voc quer o valor do ponto de cdigo inteiro, use codePointAt().
str.charCodeAt(index)
indexUm inteiro maior ou igual a 0 e menor que o comprimento da string. Se no for um nmero, o padro ser 0.
Um nmero representando o valor de unidade de cdigo UTF-16 do caractere no ndice fornecido. O valor NaN retornado se o ndice estiver fora do intervalo aceitvel.
Os pontos de cdigo Unicode variam de 0 a 1114111 (0x10FFFF). Os primeiros 128 pontos de cdigo Unicode so uma correspondncia direta da codificao de caracteres ASCII. (Para informaes sobre Unicode, veja o JavaScript Guide.)
Nota:
O charCodeAt() sempre retornar um valor menor do que 65536. Isso ocorre pois os pontos de cdigo mais altos so representados por um par de pseudo-caracteres "substitutos" (de menor valor) que so usados para compreender o caracter real.
Por isso, para examinar (ou reproduzir) o caractere completo para valores de caracteres individuais de valor 65536 e acima, necessrio recuperar no apenas o charCodeAt(i), mas tambm o charCodeAt(i+1) (como se examinando/reproduzindo a string com duas letras), ou usar o codePointAt(i). Veja o exemplo 2 e 3 (abaixo).
Compatibilidade com verses anteriores: Em verses histricas (como JavaScript 1.2) o mtodo charCodeAt() retorna um nmero indicando o valor de conjunto de cdigos ISO-Latin-1 do caractere no dado ndice. O conjunto de cdigos ISO-Latin-1 varia de 0 a 255. Os primeiros 128 (do 0 ao 127) so uma correspondncia direta ao conjunto de caracteres ASCII.
charCodeAt()O exemplo a seguir retorna 65, o valor Unicode para A.
"ABC".charCodeAt(0); // retorna 65
charCodeAt() para manipular caracteres de Plano Multilingual no Bsico se sua presena na string desconhecidaEssa verso pode ser usada em loops for e afins quando no sabemos se caracteres de Plano Multilingual no Bsico existem antes da posio do ndice especificado.
function fixedCharCodeAt(str, idx) {
// ex. fixedCharCodeAt('\uD800\uDC00', 0); // 65536
// ex. fixedCharCodeAt('\uD800\uDC00', 1); // false
idx = idx || 0;
var code = str.charCodeAt(idx);
var hi, low;
// Substituto elevado (poderia mudar o ltimo hex para 0xDB7F para tratar
// substitutos privados elevados como caracteres nicos)
if (0xd800 <= code && code <= 0xdbff) {
hi = code;
low = str.charCodeAt(idx + 1);
if (isNaN(low)) {
throw "High surrogate not followed by low surrogate in fixedCharCodeAt()";
}
return (hi - 0xd800) * 0x400 + (low - 0xdc00) + 0x10000;
}
if (0xdc00 <= code && code <= 0xdfff) {
// Low surrogate
// Retornamos false para permitir os loops pularem essa iterao j que j deveria
//ter tratado os substitutos elevados acima, na iterao anterior
return false;
/*hi = str.charCodeAt(idx - 1);
low = code;
return ((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000;*/
}
return code;
}
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-string.prototype.charcodeat |
String.fromCharCode()String.prototype.charAt()String.fromCodePoint()String.prototype.codePointAt()This page was last modified on 22 de mai. de 2026 by MDN contributors.
StringString.prototype.anchor()at()String.prototype.big()String.prototype.blink()String.prototype.bold()String.prototype.charAt()String.prototype.charCodeAt()String.prototype.codePointAt()String.prototype.concat()String.prototype.endsWith()String.prototype.fixed()String.prototype.fontcolor()String.prototype.fontsize()String.prototype.includes()String.prototype.indexOf()isWellFormed()String.prototype.italics()String.prototype.lastIndexOf()String.prototype.link()String.prototype.localeCompare()String.prototype.match()String.prototype.matchAll()String.prototype.normalize()String.prototype.padEnd()String.prototype.padStart()String.prototype.repeat()String.prototype.replace()String.prototype.replaceAll()String.prototype.search()String.prototype.slice()String.prototype.small()String.prototype.split()String.prototype.startsWith()String.prototype.strike()String.prototype.sub()String.prototype.substr()String.prototype.substring()String.prototype.sup()String.prototype.toLocaleLowerCase()String.prototype.toLocaleUpperCase()String.prototype.toLowerCase()String.prototype.toString()String.prototype.toUpperCase()toWellFormed()String.prototype.trim()String.prototype.trimEnd()String.prototype.trimStart()String.prototype.valueOf()String.prototype[@@iterator]()Object/FunctionObject.prototype.__defineGetter__()Object.prototype.__defineSetter__()Object.prototype.__lookupGetter__()Object.prototype.__lookupSetter__()Object.prototype.hasOwnProperty()Object.prototype.isPrototypeOf()Object.prototype.propertyIsEnumerable()Object.prototype.toLocaleString()Object.prototype.toString()Object.prototype.valueOf()Your blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |