三木社区

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 231|回复: 0
打印 上一主题 下一主题

buf.slice([start][, end])

[复制链接]

1562

主题

1564

帖子

4904

积分

博士

Rank: 8Rank: 8

积分
4904
跳转到指定楼层
楼主
发表于 2017-8-7 08:46:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
start Number 类型, 可选参数, 默认值: 0
end Number 类型, 可选参数, 默认值: buffer.length
返回一个新的buffer,这个buffer将会和老的buffer引用相同的内存地址,根据 start(默认是 0 ) 和 end (默认是 buffer.length ) 偏移和裁剪了索引。 负的索引是从 buffer 尾部开始计算的。
修改这个新的 buffer 实例 slice 切片,也会改变原来的 buffer!
例如: 创建一个 ASCII 字母的 Buffer,进行 slice 切片,然后修改源 Buffer 上的一个 byte。

  1. var buf1 = new Buffer(26);

  2. for (var i = 0 ; i < 26 ; i++) {
  3.   buf1[i] = i + 97; // 97 is ASCII a
  4. }

  5. var buf2 = buf1.slice(0, 3);
  6. console.log(buf2.toString('ascii', 0, buf2.length));
  7. buf1[0] = 33;
  8. console.log(buf2.toString('ascii', 0, buf2.length));

  9. // abc
  10. // !bc
复制代码


回复

使用道具 举报

Archiver|手机版|小黑屋|三木电子社区 ( 辽ICP备11000133号-4 )

辽公网安备 21021702000620号

GMT+8, 2025-6-27 00:26 , Processed in 0.027267 second(s), 23 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表