| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/parseInt | [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.
A funo parseInt() analisa um argumento string e retorna um inteiro na base especificada.
parseInt(string, base);
stringO valor a analisar. Se o argumento string no for uma string, ento o valor convertido para uma string (utilizando a operao abstrata ToString). Os espaos em branco na string so ignorados.
baseUm inteiro entre 2 e 36 que representa a base da string (sistemas numricos matemticos) mencionada no parmetro anterior. Especifique 10 para o sistema numrico decimal comumente usado por humanos. Sempre especifique este parmetro para eliminar confuso do leitor e para garantir o comportamento esperado. Implementaes diferentes produzem resultados diferentes quando base no especificado, normalmente assumindo o valor como 10.
Um nmero inteiro analisado a partir da string fornecida. Se o primeiro caracter no puder ser convertido para um nmero, NaN retornado.
A funo parseInt converte seu primeiro argumento para uma string, analisa, e retorna um inteiro ou NaN. Se no NaN, o valor retornado ser a representao decimal inteira do primeiro argumento obtido como um nmero na base especificada. Por exemplo, umabase 10 indica para converter de um nmero decimal, 8 octal, 16 hexadecimal, e assim por diante. Para bases acima de 10, as letras do alfabeto indicam numerais maiores que 9. Por exemplo, para nmeros hexadecimais (base 16), A at F so usados.
Se parseInt encontrar um caracter que no seja um numeral na base especificada, ele o ignora e a todos os caracteres subsequentes e retorna o valor inteiro analisado at aquele ponto. parseInt trunca nmeros para valores inteiros. Espaos no incio e fim so permitidos.
Se base undefined ou 0 (ou ausente), JavaScript assume o seguinte:
string de entrada comea com "0x" ou "0X", a base 16 (hexadecimal) e o restante da string analisado.string de entrada comea com "0", a base oito (octal) ou 10 (decimal). Exatamente qual base escolhida dependente da implementao. O ECMAScript 5 especifica que 10 (decimal) seja utilizado, mas nem todos os browsers suportam isso ainda. Por essa razo sempre especifique uma base quando estiver usando parseInt.string de entrada comea com qualquer outro valor, a base 10 (decimal).Se o primeiro caracter no puder ser convertido para um nmero, parseInt retorna NaN.
Para propsitos aritmticos, o valor NaN no um nmero em qualquer base. Voc pode chamar a funo isNaN para determinar se o resultado de parseInt NaN. Se NaN for passado em operaes aritmticas, o resultado da operao tambm ser NaN.
Para converter um nmero para seu literal string em uma base especfica use intValue.toString(base).
parseIntOs seguintes exemplos sempre retornam 15:
parseInt(" 0xF", 16);
parseInt(" F", 16);
parseInt("17", 8);
parseInt(021, 8);
parseInt("015", 10);
parseInt(15.99, 10);
parseInt("FXX123", 16);
parseInt("1111", 2);
parseInt("15*3", 10);
parseInt("15e2", 10);
parseInt("15px", 10);
parseInt("12", 13);
Os seguintes exemplos sempre retornam NaN:
parseInt("Hello", 8); // No realmente um nmero
parseInt("546", 2); // Dgitos no so vlidos para representaes binrias
Os seguintes exemplos sempre retornam -15:
parseInt("-F", 16);
parseInt("-0F", 16);
parseInt("-0XF", 16);
parseInt(-15.1, 10)
parseInt(" -17", 8);
parseInt(" -15", 10);
parseInt("-1111", 2);
parseInt("-15e1", 10);
parseInt("-12", 13);
O seguinte exemplo retorna 224:
parseInt("0e0", 16);
Embora desencorajado pelo ECMAScript 3 e proibido pelo ECMAScript 5, muitas implementaes interpretam uma string numrica comeando com um 0 como octal. O exemplo abaixo pode ter um resultado octal, ou ele pode ter um resultado decimal. Sempre especifique uma base para evitar este comportamento no confivel.
parseInt("0e0"); // 0
parseInt("08"); // 0, '8' no um dgito octal.
A especificao ECMAScript 5 da funco parseInt no permite mais que as implementaes tratem Strings comeando com o caracter 0 como um valor octal. O ECMAScript 5 declara:
A funo parseInt produz um valor inteiro ditado pela interpretao do contedo de uma argumento string de acordo com uma base especficada. Espaos em branco no incio da string so ignorados. Se a base for undefined ou 0, ela assumida como 10 exceto quando o nmero comea com os pares de caracter 0x or 0X, e neste caso a base 16 assumida. Se a base 16, o nmero pode tambm opcionalmente comear com os pares de caracter 0x or 0X.
Isto difere do ECMAScript 3, que desencoraja mas permite a interpretao octal.
Muitas implementaes no adotaram este comportamento a partir de 2013, e porque browser antigos devem ser suportados, sempre especifique uma base.
til em algum momento ter uma maneira mais rigorosa para analisar valores inteiros. Expresses regulares podem ajudar:
filterInt = function (value) {
if (/^(\-|\+)?([0-9]+|Infinity)$/.test(value)) return Number(value);
return NaN;
};
console.log(filterInt("421")); // 421
console.log(filterInt("-421")); // -421
console.log(filterInt("+421")); // 421
console.log(filterInt("Infinity")); // Infinity
console.log(filterInt("421e+0")); // NaN
console.log(filterInt("421hop")); // NaN
console.log(filterInt("hop1.61803398875")); // NaN
console.log(filterInt("1.61803398875")); // NaN
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-parseint-string-radix |
This page was last modified on 22 de mai. de 2026 by MDN contributors.
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 |