Narnia's Psychedelic Mushrooms

    uint256

    1.0.8 • Public • Published

    uint256

    Unsigned 256 bit Integer type

    npm

    Install

    npm install uint256

    Usage

    import { UInt256, U256 } from 'uint256';
     
    const now = Date.now();
    const scale = 18;
    const digits = U256(10).pow(scale);
     
    const POUND = (number: number) => U256(number).mul(digits);
    const toPound = (number: UInt256, fraction = false) => {
      if (!fraction) {
        return String(number.div(digits));
      }
      const str = String(number);
      if (scale < 1) {
        return str;
      }
      return `${str.substring(0, str.length - scale)}.${str.substr(-scale)}`;
    };
     
    const a = POUND(11000);
    const b = POUND(20000);
     
    console.log('scale', scale);
    console.log('a', toPound(a));
    console.log('b', toPound(b));
    console.log('mul', toPound(a.mul(b).div(digits)));
    console.log('add', toPound(a.add(b)));
    console.log('div', toPound(b.div(a.div(digits)), true));
    console.log('sub', toPound(b.sub(a)));
    console.log('elapsed(ms)', Date.now() - now);
     
    // scale 18
    // a 11000
    // b 20000
    // mul 220000000
    // add 31000
    // div 1.818181818181818181
    // sub 9000
    // elapsed(ms) 8

    Install

    npm i uint256

    DownloadsWeekly Downloads

    32

    Version

    1.0.8

    License

    Apache-2.0

    Unpacked Size

    35.5 kB

    Total Files

    10

    Last publish

    Collaborators

    • artit91