1.0.2 • Published 21 days ago

nv-number-zigzag v1.0.2

Weekly downloads
-
License
ISC
Repository
-
Last release
21 days ago

nv-number-zigzag

  • zigzag int encode/decode

   0 -1 1 -2 2 -3 3...
   0  1 2  3 4  5 6...

install

  • npm install nv-number-zigzag

usage

  const { encd,decd}   = require("nv-number-zigzag");

example

            > x.encd(0)
            0
            > x.encd(-1)
            1
            > x.encd(1)
            2
            > x.encd(-2)
            3
            > x.encd(2)
            4
            > x.encd(-3)
            5
            > x.encd(3)
            6
            > 

            > x.decd(x.encd(0))
            0
            > x.decd(x.encd(-1))
            -1
            > x.decd(x.encd(0))
            0
            > x.decd(x.encd(1))
            1
            > x.decd(x.encd(2))
            2
            > x.decd(x.encd(2**30-1))
            1073741823
            > 2**30-1
            1073741823
            > 
            > x.decd(x.encd(2**53))
            9007199254740992
            > 2**53
            9007199254740992
            > 
            > x.decd(x.encd(-(2**30)))
            -1073741824
            > -(2**30)
            -1073741824
            > 
            > 
            > 

METHODS

APIS

            {
              MIN_SMI: -2147483648,
              MAX_SMI: 2147483647,
              MIN_SMI_BI: -2147483648n,
              MAX_SMI_BI: 2147483647n,
              is_smi: [Function: is_smi],
              is_smi_bi: [Function: is_smi_bi],
              _bi: [Function: _bi],
              _num: [Function: _num],
              _encd_smi: [Function: _encd_smi],
              _encd_bi: [Function: _encd_bi],
              _encd_between_smi_bi: [Function: _encd_between_smi_bi],
              _decd_smi: [Function: _decd_smi],
              _decd_bi: [Function: _decd_bi],
              _decd_between_smi_bi: [Function: _decd_between_smi_bi],
              MIN_SMI_CAN_BE_ENCDED: -1073741824,
              MAX_SMI_CAN_BE_ENCDED: 1073741823,
              MIN_SMI_BI_CAN_BE_ENCDED: -1073741824n,
              MAX_SMI_BI_CAN_BE_ENCDED: 1073741823n,
              is_smi_can_be_encded: [Function: is_smi_can_be_encded],
              encd: [Function: encd],
              decd: [Function: decd]
            }

LICENSE

  • ISC