本文摘錄自《Nodejs學(xué)習(xí)筆記》,更多章節(jié)及更新,請(qǐng)?jiān)L問(wèn) github主頁(yè)地址。歡迎加群交流,群號(hào) 197339705。
模塊概覽
Buffer是node的核心模塊,開(kāi)發(fā)者可以利用它來(lái)處理二進(jìn)制數(shù)據(jù),比如文件流的讀寫(xiě)、網(wǎng)絡(luò)請(qǐng)求數(shù)據(jù)的處理等。
Buffer的API非常多,本文僅挑選 比較常用/容易理解 的API進(jìn)行講解,包括Buffer實(shí)例的創(chuàng)建、比較、連接、拷貝、查找、遍歷、類型轉(zhuǎn)換、截取、編碼轉(zhuǎn)換等。
創(chuàng)建
new Buffer(array)
Buffer.alloc(length)
Buffer.allocUnsafe(length)
Buffer.from(array)
通過(guò) new Buffer(array)
// Creates a new Buffer containing the ASCII bytes of the string 'buffer'const buf = new Buffer([0x62, 0x75, 0x66, 0x66, 0x65, 0x72]);
驗(yàn)證下:
var array = 'buffer'.split('').map(function(v){ return '0x' + v.charCodeAt(0).toString(16)});console.log( array.join() );// 輸出:0x62,0x75,0x66,0x66,0x65,0x72