1.0.2 • Published 2 years ago

nv-facutil-ascii v1.0.2

Weekly downloads
-
License
ISC
Repository
-
Last release
2 years ago

nv-facutil-ascii

  • read /write ascii to arraybuf
  • for test buf used in nvlang

install

  • npm install nv-facutil-ascii

usage

  const x   = require("nv-facutil-ascii");

example

        > x.nui2s(1234567890)
        'R\x05XL\x04'
        > x.s2nui('R\x05XL\x04')
        1234567890
        > x.bui2s(1234567890n,8)
        'R\x05XL\x04\x00\x00\x00'
        > x.s2bui('R\x05XL\x04\x00\x00\x00')
        1234567890n
        >

        var u8a = new Uint8Array(12);
        x.write_nui_into_u8a(1234567890,u8a,3);
        /*
        > x.write_nui_into_u8a(1234567890,u8a,3)
        [ 3, 8 ]
        > u8a
        Uint8Array(12) [
           0,  0, 0, 82, 5,
          88, 76, 4,  0, 0,
           0,  0
        ]
        >
        */

        > x.read_nui_from_u8a(u8a,3,8)
        1234567890
        >


        > var u8a = new Uint8Array(12);

        > x.write_utf8s_into_u8a("我yo他",u8a,1)
        [ 1, 9 ]
        > u8a
        Uint8Array(12) [
            0, 230, 136, 145, 121,
          111, 228, 187, 150,   0,
            0,   0
        ]

        > x.read_utf8s_from_u8a(u8a,1,9)
        '我yo他'
        >
        >

test

    //stringify Int 


    var f0 = (n)=>String(n)
    var f1 = (n)=>x.nui2s(n)

    sync(10000000,f0,1234567890)
    sync(10000000,f1,1234567890)

    /*
    > sync(10000000,f0,1234567890)
    { rounds: 10000000, f: [Function: f0], costed: 195.172381401062 }
    > sync(10000000,f1,1234567890)
    { rounds: 10000000, f: [Function: f1], costed: 1281.6126437187195 }       // 7 times SLOW than String 
    > 
    */


    //parse Int 

    var fa = (s)=>parseInt(s)
    var fb = (s)=>x.s2nui(s)
    sync(10000000,fa,"1234567890")
    sync(10000000,fb,'R\x05XL\x04')

    /*
    > sync(10000000,fa,"1234567890")
    { rounds: 10000000, f: [Function: fa], costed: 654.394278049469 }
    > sync(10000000,fb,'R\x05XL\x04')
    { rounds: 10000000, f: [Function: fb], costed: 381.7832474708557 }          // 2 times FAST than parseInt
    > 
    */

METHODS

APIS

        {
          ZERO_CHAR: '\x00',
          _nui2s: [Function: _nui2s],
          nui2s: [Function: nui2s],
          _bui2s: [Function: _bui2s],
          bui2s: [Function: bui2s],
          write_nui_into_u8a: [Function: write_nui_into_u8a],
          write_nui_into_ab: [Function: write_nui_into_ab],
          write_nui_into_dv: [Function: write_nui_into_dv],
          write_bui_into_u8a: [Function: write_bui_into_u8a],
          write_bui_into_ab: [Function: write_bui_into_ab],
          write_bui_into_dv: [Function: write_bui_into_dv],
          s2nui: [Function: s2nui],
          s2bui: [Function: s2bui],
          read_nui_from_u8a: [Function: read_nui_from_u8a],
          read_bui_from_u8a: [Function: read_bui_from_u8a],
          read_nui_from_ab: [Function: read_nui_from_ab],
          read_bui_from_ab: [Function: read_bui_from_ab],
          read_nui_from_dv: [Function: read_nui_from_dv],
          read_bui_from_dv: [Function: read_bui_from_dv],
          write_utf8s_into_u8a: [Function: write_utf8s_into_u8a],
          write_utf8s_into_ab: [Function: write_utf8s_into_ab],
          write_utf8s_into_dv: [Function: write_utf8s_into_dv],
          read_utf8s_from_u8a: [Function: read_utf8s_from_u8a],
          read_utf8s_from_ab: [Function: read_utf8s_from_ab],
          read_utf8s_from_dv: [Function: read_utf8s_from_dv]
        }

LICENSE

  • ISC