Baseline Widely available
La méthode statique BigInt.asUintN()
permet d'écréter un BigInt
pour ramener sa valeur sur un entier non-signé entre 0 et 2^(largeur)-1.
const U64_CEIL = 2n ** 64n;
console.log(BigInt.asUintN(64, U64_CEIL - 1n));
// 18446744073709551615n (2n ** 64n - 1n, the maximum non-wrapping value)
console.log(BigInt.asUintN(64, U64_CEIL));
// 0n (wraps to zero)
console.log(BigInt.asUintN(64, U64_CEIL + 1n));
// 1n
console.log(BigInt.asUintN(64, U64_CEIL * 2n));
// 0n (wraps on multiples)
console.log(BigInt.asUintN(64, U64_CEIL * -42n));
// 0n (also wraps on negative multiples)
Syntaxe
var résultat = BigInt.asUintN(largeur, bigint);
Paramètres
largeur
Le nombre de bits disponible pour stocker l'entier.
bigint
L'entier qu'on souhaite stocker sur le nombre de bits indiqués.
La valeur de bigint
modulo 2^largeur
comme un entier non signé.
La méthode BigInt.asUintN()
peut s'avérer utile pour rester dans une arithmétique exprimée sur 64 bits .
const max = 2n ** 64n - 1n;
BigInt.asUintN(64, max);
// ⪠18446744073709551615n
BigInt.asUintN(64, max + 1n);
// ⪠0n
// zéro en raison du dépassement
Spécifications Compatibilité des navigateurs Voir aussi
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4