美文网首页日常刻书
聊聊 Node.js 中的 Buffer

聊聊 Node.js 中的 Buffer

作者: F_wind | 来源:发表于2021-01-06 09:46 被阅读0次

    《深入浅出 Node.js》阅读随笔

    • 应用场景
      在浏览器端,使用字符串来处理数据,通常就可以满足日常要求了。但是将 Javascript 作为服务器端语言时,还需要满足对二进制字节的处理,此时 Buffer 应用而生。
    • 结构
      新建一个 Buffer 对象,里面放置的是一些由 0-255 之间十六进制数字组成的数组。
    • 赋值原则
      我们可以通过数组下标的方式来读取 Buffer 中每一位的值,同样也可以改变其值。赋值原则是:1. 如果大于 256 ,则依次减去 256 直到不大于为止;2. 如果小于 0 ,则依次增加 256 直到大于 0 为止;3. 如果是小数,则取整数部分。
    const buff = Buffer.alloc(10);
    buff[0] = 10;
    console.log(buff[0]); // 输出 10
    buff[0] = 256;
    console.log(buff[0]); // 输出 0
    buff[0] = -10;
    console.log(buff[0]); // 输出 246
    buff[0] = 1.123;
    console.log(buff[0]); // 输出 1
    
    • 内存使用
      Buffer 属于堆外内存,没有 V8 引擎在内存上的限制(64 位系统 1.4GB,32 位系统 0.7GB)。
    • 优势
      经验证,在网络传输中直接传输 Buffer 要比传输字符串要更高效,因为省去了不必要的转换过程。

    相关文章

      网友评论

        本文标题:聊聊 Node.js 中的 Buffer

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