BigInt es un objeto incorporado en JavaScript que proporciona una forma de representar números enteros mayores que 2 53 -1. El número más grande que JavaScript puede representar de forma fiable con la primitiva Number es 2 53 -1, que se representa mediante la constante MAX_SAFE_INTEGER . Esto tiene varios usos donde se requieren operaciones en grandes números.
Sintaxis:
BigInt( number ) or Appending n to end of an integer literal
Parámetros: acepta un único literal entero como string que debe representarse como BigInt.
Tipo de devolución: este método devuelve el valor dado como tipo de datos BigInt.
Ejemplo: Este ejemplo crea un BigInt usando la función BigInt().
javascript
// Parameter in decimal format var bigNum = BigInt( "123422222222222222222222222222222222222"); console.log(bigNum); // Parameter in hexadecimal format var bigHex = BigInt("0x1ffffffeeeeeeeeef"); console.log(bigHex); // Parameter in binary format var bigBin = BigInt( "0b1010101001010101001111111111111111"); console.log(bigBin);
Producción:
123422222222222222222222222222222222222n 36893488074118328047n 11430854655n
Ejemplo: este ejemplo crea un BigInt agregando n al final del número.
javascript
// Decimal format var bigNum = 123422222222222222222222222222222222222n console.log(bigNum) // Hexadecimal format var bigHex = 0x1ffffffeeeeeeeeefn console.log(bigHex) // Binary format var bigBin = 0b1010101001010101001111111111111111n console.log(bigBin)
Producción:
123422222222222222222222222222222222222n 36893488074118328047n 11430854655n
Comparación de BigInt con otros tipos: BigInt es similar a Number en algunos aspectos, sin embargo, no se puede usar con métodos del objeto Math incorporado y no se puede mezclar con instancias de Number en operaciones.
Ejemplo: Comparar BigInt con un Número.
typeof 100n === 100 // Returns false typeof 100n == 100 // Returns true due to coercion typeof 100n === 'bigint' // Returns true 100n < 101 // Returns true due to coercion
Clasificación: una array puede contener tipos de datos primitivos y BigInts. Esto permite que el método sort() funcione cuando los valores normales Number y BigInt están presentes en la array.
Ejemplo:
javascript
// Array consisting of both // Number and BigInt var arr = [4, 2, 5n, 2n] // Sorting the array arr.sort() console.log(arr) // [2, 2n, 4, 5n]
Producción:
[2, 2n, 4, 5n]
Recomendación de uso: No se recomienda el uso de las siguientes aplicaciones con BigInt debido a su implementación:
- Coerción: la coerción entre Number y BigInt puede conducir a la pérdida de precisión, se recomienda usar solo BigInt cuando se esperan razonablemente valores superiores a 253 y no coaccionar entre los dos tipos.
- Criptografía: Las operaciones soportadas en BigInt no son de tiempo constante. Por lo tanto, BigInt no es adecuado para su uso en criptografía.
Navegadores compatibles: los navegadores compatibles con el método BigInt se enumeran a continuación:
- Cromo
- Borde
- Firefox
- Ópera