美文网首页
buffer的结构

buffer的结构

作者: 萘小蒽 | 来源:发表于2019-11-16 09:27 被阅读0次

    Buffer是一个类似于Arrray的对象,但它主要用于操作字节。

    1. 模块结构

    Buffer是一个典型 的JavaScript与C++结合的模块,它将性能相关部分用C++实现,将非性能相关的部分用JavaScript实现:


    buffer的分工

    2. Buffer对象

    Buffer对象类似于数组,它的元素为16进制的两位数(0-255数值)

    1. 中文字在utf-8中占用3个字符。
    var str = '在学习Node啊!'
    var buf = new Buffer(str);
    console.log(buf);
    //<Buffer e5 9c a8 e5 ad a6 e4 b9 a0 4e 6f 64 65 e5 95 8a ef bc 81>
    var strBuf = new Buffer('str','utf-8') 
    //<Buffer 73 74 72>
    
    1. 我们可以通过下标对他进行赋值(0-255整数)
    var buf = new Buffer(100);
    buf.length // 100
    console.log(buf[10]) //0
    buf[10] = 100
    console.log(buf[10]) //100
    
    1. 如果给元素赋值不是0-255的整数,而是小数时:
    buf[20] = -100;
    buf[20]  // 156;
    buf[21] = 300;
    buf[21]  // 44
    buf[22] = 3.1415;
    buf[22] //3
    
    • 给元素赋值小余0 ,该赋值逐次加256,直到得到一个0-255的整数;
    • 给元素赋值大余255 ,该赋值逐次减256,直到得到一个0-255的整数;
    • 如果是小数,舍弃小数部分,保留整数部分。

    相关文章

      网友评论

          本文标题:buffer的结构

          本文链接:https://www.haomeiwen.com/subject/fzljbctx.html