我想在另一个缓冲区中复制我的一个缓冲区的一些元素。我在REPL上输入以下命令
assn1.copy(assn3,0,40,59)
assn1是源缓冲区assn3是目标缓冲区
但我收到了以下错误。
TypeError: assn1.copy is not a function
at repl:1:7
at REPLServer.defaultEval (repl.js:270:27)
at bound (domain.js:287:14)
at REPLServer.runBound [as eval] (domain.js:300:12)
at REPLServer.<anonymous> (repl.js:439:10)
at emitOne (events.js:95:20)
at REPLServer.emit (events.js:182:7)
at REPLServer.Interface._onLine (readline.js:211:10)
at REPLServer.Interface._line (readline.js:550:8)
at REPLServer.Interface._ttyWrite (readline.js:827:14)
帮我解决这个问题。
答案 0 :(得分:0)
assn1 = ARR;
实际上并没有将数组复制到缓冲区中,而是将变量重新分配给数组对象,这样就丢失了缓冲区对象。
尝试这样的事情:
var a = [1, 2, 8, 9];
var buf1 = new Buffer(a);
var b = [3, 4];
new Buffer(b).copy(buf1, 2, 0, 2);
console.log(buf1);
为我提供此输出:
<Buffer 01 02 03 04>
希望这有帮助。