Ce face BigInt.asIntN / asUintN
Aceste funcții simulează întregii de lungime fixă din alte limbaje: păstrează doar ultimii biti biți ai valorii. asUintN îi interpretează ca număr fără semn (de la 0 la 2biți − 1), iar asIntN ca număr cu semn în complement față de doi.
Sunt folosite pentru calcule pe 64 de biți (hash-uri, protocoale binare), împreună cu BigInt64Array și DataView.getBigInt64.
Parametri
| Parametru | Descriere |
|---|---|
biti |
Numărul de biți păstrați (0 până la 253 − 1). |
valoare |
Valoarea BigInt. |
Ce returnează
Un BigInt.
Exemple
Exemplul 1: Depășirea unui întreg pe 8 biți
console.log(BigInt.asUintN(8, 255n), BigInt.asUintN(8, 256n), BigInt.asUintN(8, -1n));
console.log(BigInt.asIntN(8, 127n), BigInt.asIntN(8, 128n), BigInt.asIntN(8, 255n));
Rezultat
255n 0n 255n
127n -128n -1n
Exemplul 2: Valoarea maximă pe 64 de biți
const max64 = BigInt.asUintN(64, -1n);
console.log(max64);
console.log(BigInt.asIntN(64, max64));
Rezultat
18446744073709551615n
-1n
Greșeli frecvente
- Dai un număr obișnuit în loc de BigInt:
BigInt.asUintN(8, 300)aruncăTypeError. Scrie300n.