BigBit
January 14, 2019 ยท View on GitHub
An improved data type to save large numbers in less space without precision loss. check more detail here. Or try the demo
var HBSequence = require('bigbit').HeaderByte;
let hb = new HBSequence('167770021700.00');
expect( hb.toString() ).toEqual('167770021700');
expect( hb.toByteArray() ).toEqual([69, 2, 121, 172, 255, 99]);
expect( HBSequence.decode( hb.toByteArray() ).toString() ).toEqual('167770021700'); //decode( byteArray, index[, maxNumberOfBytes ]);
expect( hb.exponent ).toEqual( 2 );
expect( hb.exponentInBytes ).toEqual( 2 );
expect( hb.headByte ).toEqual(69);
var EHBSequence = require('bigbit').ExtendedHeaderByte;
let ehb = new EHBSequence('167770021700.00');
expect( ehb.toString() ).toEqual('167770021700');
expect( ehb.toByteArray() ).toEqual([69, 2, 121, 172, 255, 99]);
expect( EHBSequence.decode( hb.toByteArray() ).toString() ).toEqual('167770021700.00'); //decode( byteArray, index[, maxNumberOfBytes ]);
expect( ehb.exponent ).toEqual( 2 );
expect( ehb.exponentInBytes ).toEqual( [2] );
expect( ehb.headByte ).toEqual(69);
var LBSequence = require('bigbit').LinkedBytes;
expect( LBSequence.encode('123000') ).toEqual( [ 248, 192, 7]);
expect( LBSequence.decode([ 248, 192, 7]) ).toEqual({ val: '123000', len: 3}); //decode( byteArray, index[, maxNumberOfBytes ]);