JavaScript BigInt

Resumo : neste tutorial, você aprenderá sobre o BigInttipo que é o objeto integrado que pode representar números inteiros maiores que 2 53  – 1.

Introdução ao JavaScript BigInt

ES2020 introduziu um novo objeto integrado chamado BigIntque permite representar números inteiros maiores .253 - 1

O biginté o tipo primitivo como number, string, symbol, boolean undefinede null.

Para fazer um BigInt, você anexa nao final do número literal, por exemplo:

let bigInt = 9007199254740991n;Linguagem de código:  JavaScript  ( javascript )

Alternativamente, você pode chamar a função BigInt():

let bigInt = BigInt(9007199254740991);Linguagem de código:  JavaScript  ( javascript )

Veja o seguinte cálculo com a Number:

let x = Number.MAX_SAFE_INTEGER;
x = x + 1; // 9007199254740992
x = x + 1; // 9007199254740992 (same as above)Linguagem de código:  JavaScript  ( javascript )

e com um BigInt:

let x = BigInt(Number.MAX_SAFE_INTEGER);
x = x + 1; // 9007199254740992n
x = x + 1; // 9007199254740993n (correct now)Linguagem de código:  JavaScript  ( javascript )

Tipo

O tipo de a BigInté bigint. Por exemplo:

console.log(typeof bigInt); // bigint
console.log(typeof BigInt(100) === 'bigint'); // trueLinguagem de código:  JavaScript  ( javascript )

Operadores

O BigIntsuporta o seguinte operador +, *, -, **, %, operadores bit a bit, exceto >>>(deslocamento para a direita com preenchimento de zero). Não suporta o operador unário ( +).

A /operadora também trabalhará com números inteiros. No entanto, o resultado não retornará nenhum dígito fracionário. Por exemplo:

let result = 3n / 2n;
console.log(result); // 1n, not 1.5nLinguagem de código:  JavaScript  ( javascript )

Comparações

A BigIntnão é estritamente igual ( ===) a a Number:

console.log(1n === 1); // falseLinguagem de código:  JavaScript  ( javascript )

No entanto, a BigInté aproximadamente igual a um número quando você usa o ==operador:

console.log(1n == 1); // true    Linguagem de código:  JavaScript  ( javascript )

Você pode usar <, <=, >, >=para comparar a BigIntcom a Number:

console.log(1n < 2); // true
console.log(2n > 1); // true
console.log(2n >= 2); // trueLinguagem de código:  JavaScript  ( javascript )

Condicionais

A BigInté convertido em a Booleanpor meio da função em condicionais , Boolean()como ifinstrução ou operadores lógicos || . &&, !Ou seja, funciona como um Numbernestes casos. Por exemplo:

let count = 0n;

if(count) {
    console.log(true);
} else {
    console.log(false);
}
Linguagem de código:  JavaScript  ( javascript )

Resumo

  • O BigInté um novo tipo primitivo que pode representar números inteiros maiores que , que é o maior número que o Javascript pode representar de forma confiável com o tipo.253 - 1number
  • Anexe na um número inteiro literal ou use BigInt()uma função para criar um arquivo bigint.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *