Neste tutorial, você aprenderá sobre o JavaScript Number com a ajuda de exemplos.
Em JavaScript, os números são tipos de dados primitivos. Por exemplo,
const a = 3; const b = 3.13;
Ao contrário de algumas outras linguagens de programação, você não precisa declarar especificamente para valores inteiros ou flutuantes usando int , float , etc.
Você pode usar a notação exponencial e para incluir números muito grandes ou muito pequenos. Por exemplo,
const a1 = 5e9; console.log(a1); //5000000000 const a2 = 5e-5; console.log(a2); // 0.00005
Os números também podem ser denotados em notação hexadecimal. Por exemplo,
const a = 0xff; console.log(a); // 255 const b = 0x00 ; console.log(b); // 0
+ Operador com Números
Quando +
é usado com números, é usado para somar os números. Por exemplo,
const a = 4 + 9; console.log(a); // 13
Quando +
é usado com números e strings, é usado para concatená-los. Por exemplo,
const a = '4' + 9; console.log(a); // 49
Quando uma string numérica é usada com outras operações numéricas, a string numérica é convertida em um número. Por exemplo,
const a = '4' - 2; console.log(a); // 2 const a = '4' / 2; console.log(a); // 2 const a = '4' * 2; console.log(a); // 8
JavaScript NaN
Em JavaScript, NaN
(Not a Number) é uma palavra-chave que indica que o valor não é um número.
Executar operações aritméticas (exceto +
) para valores numéricos com resultados de string em NaN
. Por exemplo,
const a = 4 - 'hello'; console.log(a); // NaN
A função integrada isNaN()
pode ser usada para descobrir se um valor é um número. Por exemplo,
const a = isNaN(9); console.log(a); // false const a = isNaN(4 - 'hello'); console.log(a); // true
Quando o typeof
operador é usado para NaN
valor, ele fornece uma saída numérica. Por exemplo,
const a = 4 - 'hello'; console.log(a); // NaN console.log(typeof a); // "number"
JavaScript Infinity
Em JavaScript, quando o cálculo é feito que excede o maior (ou menor) número possível, Infinity
(ou -Infinity
) é retornado. Por exemplo,
const a = 2 / 0; console.log(a); // Infinity const a = -2 / 0; console.log(a); // -Infinity
JavaScript BigInt
Em JavaScript, o tipo de número só pode representar números menores que (2 53 - 1) e mais que - (2 53 - 1) . No entanto, se você precisar usar um número maior do que esse, poderá usar o tipo de dados BigInt.
Um número BigInt é criado anexando n ao final de um inteiro. Por exemplo,
// BigInt value const value = 900719925124740998n; // Adding two big integers const value1 = value + 1n; console.log(value1); // returns "900719925124740999n"
Nota: BigInt foi introduzido na versão mais recente do JavaScript e não é compatível com muitos navegadores. Visite o suporte do JavaScript BigInt para saber mais.
Números JavaScript são armazenados em 64 bits
Em JavaScript, os números são armazenados no formato de 64 bits IEEE-754, também conhecido como "números de ponto flutuante de precisão dupla".
Os números são armazenados em 64 bits (o número é armazenado nas posições de 0 a 51 bits, o expoente nas posições de 52 a 62 bits e o sinal na posição de 63 bits).
Números | Expoente | Placa |
---|---|---|
52 bits (0 - 51) | 11 bits (52-62) | 1 bit (63) |
Problemas de precisão
Operações em números de ponto flutuante resultam em alguns resultados inesperados. Por exemplo,
const a = 0.1 + 0.2; console.log(a); // 0.30000000000000004
O resultado deve ser 0,3 em vez de 0,30000000000000004 . Este erro ocorre porque no JavaScript, os números são armazenados na forma binária para representar os dígitos decimais internamente. E os números decimais não podem ser representados exatamente na forma binária.
Para resolver o problema acima, você pode fazer algo assim:
const a = (0.1 * 10 + 0.2 * 10) / 10; console.log(a); // 0.3
Você também pode usar o toFixed()
método.
const a = 0.1 + 0.2; console.log(a.toFixed(2)); // 0.30
toFixed(2)
arredonda o número decimal para dois valores decimais.
const a = 9999999999999999 console.log(a); // 10000000000000000
Nota : Os inteiros têm precisão de até 15 dígitos.
Objetos de número
Você também pode criar números usando a new
palavra - chave. Por exemplo,
const a = 45; // creating a number object const b = new Number(45); console.log(a); // 45 console.log(b); // 45 console.log(typeof a); // "number" console.log(typeof b); // "object"
Nota : Recomenda-se evitar o uso de objetos numéricos. O uso de objetos numéricos retarda o programa.
Métodos de número JavaScript
Aqui está uma lista de métodos de números integrados em JavaScript.
Método | Descrição |
---|---|
isNaN () | determina se o valor passado é NaN |
isFinite () | determina se o valor passado é um número finito |
isInteger () | determina se o valor passado é um inteiro |
isSafeInteger () | determina se o valor passado é um número inteiro seguro |
parseFloat (string) | converte a string numérica flutuante em um número de ponto flutuante |
parseInt (string, (raiz)) | converte a string numérica em inteiro |
toExponential (fractionDigits) | returns a string value for a number in exponential notation |
toFixed(digits) | returns a string value for a number in fixed-point notation |
toPrecision() | returns a string value for a number to a specified precision |
toString((radix)) | returns a string value in a specified radix(base) |
valueof() | returns the numbers value |
toLocaleString() | returns a string with a language sensitive representation of a number |
For example,
// check if a is integer const a = 12; console.log(Number.isInteger(a)); // true // check if b is NaN const b = NaN; console.log(Number.isNaN(b)); // true // display upto two decimal point const d = 5.1234; console.log(d.toFixed(2)); // 5.12
JavaScript Number Properties
Here is a list of Number properties in JavaScript.
Property | Description |
---|---|
EPSILON | returns the smallest interval between two representable numbers |
MAX_SAFE_INTEGER | returns the maximum safe integer |
MAX_VALUE | returns the largest possible value |
MIN_SAFE_INTEGER | returns the minimum safe integer |
MIN_VALUE | returns the smallest possible value |
NaN | represents 'Not-a-Number' value |
NEGATIVE_INFINITY | represents negative infinity |
POSITIVE_INFINITY | representa infinito positivo |
protótipo | permite a adição de propriedades a objetos Number |
Por exemplo,
// largest possible value const a = Number.MAX_VALUE; console.log(a); // 1.7976931348623157e+308 // maximum safe integer const a = Number.MAX_SAFE_INTEGER; console.log(a); // 9007199254740991
Função JavaScript Number ()
A Number()
função é usada para converter vários tipos de dados em números. Por exemplo,
const a = '23'; // string const b = true; // boolean //converting to number const result1 = Number(a); const result2 = Number(b); console.log(result1); // 23 console.log(result2); // 1
Se você quiser saber mais sobre a conversão de número, visite JavaScript Type Conversion.