Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

JSBI: BigInts in JavaScript

JSBI è una libreria JavaScript che consente di utilizzare i BigInt come se fossero una feature nativa.
JSBI: BigInts in JavaScript
JSBI è una libreria JavaScript che consente di utilizzare i BigInt come se fossero una feature nativa.
Link copiato negli appunti

JSBI è una libreria in puro codice JavaScript che permette di implementare la proposta ufficiale ECMA relativa ai BigInt, ormai sulla strada di divenire una feature nativa del linguaggio.

I BigInt nativi sono stati già implementati in alcuni browser basati su Chromium (come Google Chrome e Opera), ma con un problema: attualmente per utilizzare i BigInts è necessario avvalersi di una libreria. La proposta sui BigInts altera il comportamento degli operatori che lavorano direttamente sui BigInts, e questa caratteristica non è implementabile direttamente nel broswer. La soluzione basata sulla sostituzione di ogni singolo operatore con una chiamata ad una funzione che esegue un type check sugli input, è inaccettabile dal punto di vista delle performance ed e quindi da scartare.

JSBI implementa un altro tipo di soluzione: scrivere codice utilizzando la sintassi di una libreria e tradurla sul codice dei BigInt nativo, quando disponibile. JBI è disegnato per assolvere a questa funzione: fornire un'implementazione "polyfill" (una sorta di codice o funzionalità che ci si aspetta che il browser compia nativamente) relativa ai BigInts identica agli imminenti BigInts nativi, con una sintassi utilizzabile su tutti i maggiori browser.

I vantaggi di JSBI, sono elencati direttamente dagli autori. La libreria si comporta esattamente come faranno i BigInt nativi quando diventeranno ufficialmente disponibili: non occorrerà modificare la logica del codice allo stato attuale, ma verrà richiesto soltanto un cambio meccanico al momento della migrazione. Il focus è fortemente incentrato sulle performance: di media, JSBI è assolutamente competitivo con l'implementazione nativa che è ad oggi in azione su Google Chrome.

Nella pagina ufficiale del progetto possiamo ricavare tutte le informazioni necessarie all'installazione (ad esempio via npm), alla sua implementazione ed al suo utilizzo, che può essere qualcosa di simile:

import JSBI from './jsbi.mjs';
const JSBigInt = JSBI.BigInt;
const max = JSBigInt(Number.MAX_SAFE_INTEGER);
console.log(String(max));
// → '9007199254740991'
const other = JSBigInt('2');
const result = max.add(other);
console.log(String(result));
// → '9007199254740993'

Via JSBI

Ti consigliamo anche