Retour au cours

Le type BigInt : gérer les nombres arbitrairement grands

JavaScript : Le cours complet pour débutant, de « Zéro à Héros »

22. Le type BigInt

Le type Number standard en JavaScript utilise un format de virgule flottante 64 bits. Cela signifie qu'il ne peut représenter les entiers de manière sûre que jusqu'à 2^53 - 1 (soit Number.MAX_SAFE_INTEGER). Pour les nombres plus grands (courants en cryptographie, horodatage ou grandes bases de données), la précision est perdue.

BigInt, introduit plus récemment, nous permet de travailler avec des entiers arbitrairement grands.

Création d'un BigInt

Vous créez un BigInt en ajoutant la lettre n à la fin d'un entier littéral.

javascript const massiveNumber = 9007199254740991n; // Le maximum sûr en Number est 9007199254740991 const biggerThanSafe = massiveNumber + 1n;

console.log(biggerThanSafe); // Résultat : 9007199254740992n

// console.log(Number.MAX_SAFE_INTEGER + 1); // Ce calcul perdrait de la précision

Limitations de BigInt

Les BigInts ne peuvent pas être mélangés avec des Numbers standards dans les opérations mathématiques. Vous devez les convertir explicitement si nécessaire.

javascript // console.log(10n + 5); // ERREUR console.log(10n + BigInt(5)); // OK : 15n