Node.js缓冲区操作

纯JavaScript无法有效地处理二进制数据。 Node.js具有用于处理二进制数据的本机层实现,这是使用JavaScript语法的缓冲区实现。 在node.js中,我们在所有操作中都有buufer来读取和写入数据。

有关node.js缓冲区实现的一些注意事项–

  • A>缓冲区无法调整大小。
  • B>来自传输层的原始数据存储在缓冲区实例中。
  • C>缓冲区对应于V8 JavaScript引擎外部的原始内存分配。

现在简而言之,我们将介绍语法。

默认情况下,要为utf-8编码的字符串创建缓冲区:

var buf = new Buffer('Hello Node.js...');

要打印缓冲区,我们可以编写:

console.log(buf);

但是它将向我们显示内存分配的空间。

要打印文本,请输入以下内容:

console.log(buf.toString());

要创建一个预先分配大小的缓冲区,我们需要这样写:

var buf = new Buffer(256);

我们也可以使用以下语法将valye存储在每个预分配的数组中:

buf[10] = 108;

我们可以在创建缓冲区或打印缓冲区时进行编码:

var buf = new Buffer('Hello Node.js...','base64');

要么

console.log(buf.toString('base64'));

可以使用以下语法将缓冲区切成小缓冲区:

var buffer = new Buffer('this is a good place to start');
var slice = buffer.slice(10, 20);

在这里,新缓冲区变量“ slice”将填充“好地方”,从旧缓冲区的第10个字节开始,到第20个字节结束。

同样要将一个缓冲区复制到另一个缓冲区变量,我们需要写成

var buffer = new Buffer('this is a good place to start');
var slice = new Buffer(10);
var startTarget = 0,start = 10,end = 20;
buffer.copy(slice, startTarget, start, end);

在这里,这些值将从旧缓冲区复制到新缓冲区。

这里可以找到有关Buffer类的详细文档。

参考:来自Phlox Blog博客的JCG合作伙伴 Piyas De的Node.js缓冲区操作

翻译自: https://www.javacodegeeks.com/2013/12/node-js-buffer-operations.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值