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


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


Buffer.swap16()方法是Buffer模塊中Buffer類的內置應用程序編程接口,用於就地交換緩衝區字節順序。通過將緩衝區解釋為16位數字的數組來執行交換。

用法:

Buffer.swap16()

參數:此方法不接受任何參數。


返回值:它返回對交換緩衝區的引用。

引發錯誤:如果緩衝區的長度(buf.length)不是2的倍數,則拋出ERR_INVALID_BUFFER_SIZE。

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

範例1:

// Node.js program to demonstrate the  
// Buffer.swap16() method  
      
// Creating a buffer  
const buf = Buffer.from([0x1, 0x2, 
        0x3, 0x4, 0x5, 0x6, 0x7, 0x8]);  
  
// Display the buffer value 
// before swap  
console.log(buf);  
  
// Using Buffer.swap16() method 
buf.swap16(); 
      
// Display the result  
// after swap 
console.log(buf); 

輸出:

<Buffer 01 02 03 04 05 06 07 08>
<Buffer 02 01 04 03 06 05 08 07>

範例2:本示例顯示此方法引發的錯誤。

// Node.js program to demonstrate the  
// Buffer.swap16() method  
      
// Creating a buffer  
const buf = Buffer.from([0x7, 0x5, 0x2]);  
  
// Display the buffer value 
// before swap  
console.log(buf);  
  
try { 
    // Using Buffer.swap16() method 
    // It will throw error 
    buf.swap16(); 
  
    // Display the result  
    // after swap 
    console.log(buf); 
  
} 
catch(e) { 
    console.log("Entering catch block"); 
  
    // Display error 
    console.log(e); 
}

輸出:

<Buffer 07 05 02>
Entering catch block
RangeError [ERR_INVALID_BUFFER_SIZE]:Buffer size
must be a multiple of 16-bits
    at Buffer.swap16 (buffer.js:1042:11)
    at /home/runner/index.js:14:9
    ......

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

參考: https://nodejs.org/dist/latest-v13.x/docs/api/buffer.html#buffer_buf_swap16



相關用法


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