首页 > 其他 > 详细

Buffer.alloc()

时间:2018-11-05 12:46:42      阅读:179      评论:0      收藏:0      [点我收藏+]

Buffer.alloc(size[, fill[, encoding]])


  • size {Number}

  • fill {Value} 默认:undefined

  • encoding {String} 默认:utf8


分配一个 size 字节大小的新 Buffer。如果 fill 是 undefined ,该 Buffer 将被零填充(zero-filled)。+

const buf = Buffer.alloc(5);
console.log(buf);
// <Buffer 00 00 00 00 00>

size 必须小于等于 require(‘buffer‘).kMaxLength(在64位架构上 kMaxLength 的大小是 (2^31)-1)的值,否则将抛出一个 RangeError 的错误。如果 size 小于 0 将创建一个特定的 0 长度(zero-length )的 Buffer。
如果指定了 fill 参数,将通过调用 buf.fill(fill) 初始化当前 Buffer 的分配。

const buf = Buffer.alloc(5, 'a');
console.log(buf);
// <Buffer 61 61 61 61 61>

如果同时指定了 fill 和 encoding 参数,将通过调用 buf.fill(fill, encoding) 初始化当前 Buffer 的分配。例如:

const buf = Buffer.alloc(11, 'aGVsbG8gd29ybGQ=', 'base64');
console.log(buf);
// <Buffer 68 65 6c 6c 6f 20 77 6f 72 6c 64>

调用 Buffer.alloc(size) 方法显然要比替代的 Buffer.allocUnsafe(size) 要慢,但可以确保新建的 Buffer 实例的内容不会包含敏感数据。
如果 size 不是一个数字则抛出一个 TypeError 错误。

Buffer.alloc()

原文:https://www.cnblogs.com/lalalagq/p/9908498.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!