當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Node.js Buffer.copy()用法及代碼示例


緩衝區是一種臨時存儲器,用於在將數據從一個位置移動到另一位置時存儲數據。它就像一個整數數組。

Buffer.copy()方法隻是將所有值從輸入緩衝區複製到另一個緩衝區。

用法:


buffer.copy( target, targetStart, sourceStart, sourceEnd )

參數:該方法接受上述和以下所述的兩個參數:

  • target:它是一個緩衝區,您需要在其中複製所有值。
  • targetStart:它指的是目標緩衝區的元素將開始寫入的起始索引。其默認值為0。
  • sourceStart:它是輸入緩衝區的索引,將從該索引開始複製值。其默認值為0。
  • sourceEnd:輸入緩衝區的索引,直到完成值的複製為止。其默認值為buffer.length size。

返回值:此方法返回一個數字,該數字指示複製的字節數。

注意:即使目標內存區域(索引)已經存在,也將從輸入緩衝區中複製值並將其覆蓋到輸出緩衝區中。即使目標存儲區與輸入緩衝區重疊,也將數據從輸入緩衝區的區域複製到目標緩衝區的區域。

以下示例說明了Node.js中Buffer.includes()方法的使用:

範例1:

// Node.js program to demonstrate the   
// Buffer.copy() Method  
      
// Creating a buffer 
var buffer2 = Buffer.from('for'); 
  
var buffer1 = Buffer.from('GeeksandGeeks'); 
  
buffer2.copy(buffer1, 5, 0); 
  
console.log(buffer1.toString());

輸出:

GeeksforGeeks

範例2:

// Node.js program to demonstrate the   
// Buffer.copy() Method 
  
var buffer2 = Buffer.allocUnsafe(5); 
  
var buffer1 = Buffer.from('Geeks'); 
  
for (let i = 0; i < 5; i++) { 
   
    // Adds:'a b c d e' as 97 98 99 100 101 
    // are their respective ASCII values 
    buffer2[i] = i + 97; 
} 
  
buffer2.copy(buffer1, 2); 
  
// Prints 'Geabc' as the input buffer1 
// carries 'Geeks' and we provided the 
// targetStart index as 2 
// so elements will replace the values in 
// buffer1 starting from index 2 
  
console.log(buffer1.toString());

輸出:

Geabc

注意:上麵的程序將通過使用node index.js命令。

參考: https://nodejs.org/api/buffer.html#buffer_buf_copy_target_targetstart_sourcestart_sourceend



相關用法


注:本文由純淨天空篩選整理自Abhishek7大神的英文原創作品 Node.js | Buffer.copy() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。