Objeto BigInt
En Javascript disponemos del objeto BigInt
para poder representar valores muy largos, mayores que los números enteros.
Es importante entender que el objeto Number
nos crea un objeto del tipo Number
, mientras que el objeto BigInt
crea un tipo de dato primitivo de tipo “bignit”
.
Crear un objeto BigInt
Para poder crear un número BigInt se puede hacer utilizando un literal acabado en n
.
let numero = 1234567890n;
O bien utilizando el constructor del objeto BigInt
, el cual recibe el valor con el número a representar con el tipo “bigint”
:
let numero = BigInt(1234567890);
Este valor puede ser un número ya sea binario, decimal, hexadecimal u octal o bien podría ser una cadena: Así podemos ver los siguientes constructores.
let n2 = BigInt(1234567890);
let n3 = BigInt(0b1000);
let n4 = BigInt(0173);
let n5 = BigInt(0x7B);
let n6 = BigInt("12345");
Si ejecutamos un typeof
veremos que el valor es “bigint”
.
typeof numero; // bigint
Operando con objetos BigInt
Cuando utilicemos el objeto BigInt
tenemos que saber que hay varias restricciones a la hora de operar con estos valores.
Por un lado podremos utilizar los operadores aritméticos básicos como +
, -
, *
, /
, %
y **
.
let n1 = 12345n;
let n2 = 12345n;
console.log(n1*n2);
Y siempre tiene que ser siempre entre objetos BigInt
. Es decir, no podemos mezclar valores BigInt
con otros como podría ser Number
.
let n1 = 12345;
let n2 = 12345n;
console.log(n1*n2); // TypeError
Además, por otro lado, tendremos la limitación de que no podemos utilizar el objeto Math con objetos BigInt
.
Comparando objetos BigInt
Si hablamos de comparaciones con objetos BigInt
hay que indicar que estos se pueden compara con los números normales sin mayor problema. Es por ello que podemos utilizar cualquier operador de comparación.
De esta forma podemos tener el siguiente código:
let n1 = 123n;
let n2 = 123;
if (n1 == n2)
console.log("Son iguales");
- Anterior
- Siguiente
Índice Javascript
Descargar
El manual se encuentra en continua revisión. Desde aquí puedes obtener la última versión digital del Tutorial Javascript o bien obtener actualizaciones mensuales del manual.También tenéis la opción de descargar otros manuales o el pack con todos los manuales.