Node.js之Buffer

來源:互聯網
上載者:User

標籤:var   二進位   位元組   node   其他   對象   hex   編碼方式   tcp   

JavaScript 語言自身只有字串資料型別,沒有位元據類型。但在處理像TCP流或檔案流時,必須使用到位元據。因此在 Node.js中,定義了一個 Buffer 類,該類用來建立一個專門存放位元據的緩衝區,可以讓 Node.js 處理位元據,每當需要在 Node.js 中處理I/O操作中移動的資料時,就有可能使用 Buffer 庫,一個 Buffer 類似於一個整數數組,但它對應於 V8 堆記憶體之外的一塊原始記憶體。


建立 Buffer 對象(3種方式)

var buf = new Buffer(10); //建立長度為 10 位元組的 Buffer 執行個體
var buf = new Buffer([10, 20, 30, 40, 50]); //通過給定的數組建立 Buffer 執行個體
var buf = new Buffer("www.runoob.com", "utf-8"); //通過一個字串來建立 Buffer 執行個體,utf-8 是預設的編碼方式,其他編碼"ascii", "utf8", "utf16le", "ucs2", "base64" 和 "hex"。

 

寫入緩衝區(2種方式)

var buf = new Buffer(10);buf.write("helloWorld");
var buf = new Buffer(26);for (var i = 0 ; i < 26 ; i++) {  buf[i] = i + 97;}console.log(buf.toString(‘utf8‘)); // 輸出: abcdefghijklmnopqrstuvwxyz // 預設為utf8 可不填

 

返回 JSON 對象。

var buf = new Buffer(‘www.runoob.com‘);var json = buf.toJSON(buf);console.log(json); //輸出為 [ 119, 119, 119, 46, 114, 117, 110, 111, 111, 98, 46, 99, 111, 109 ]

 

緩衝區合并

var buffer1 = new Buffer(‘菜鳥教程 ‘);var buffer2 = new Buffer(‘www.runoob.com‘);var buffer3 = Buffer.concat([buffer1,buffer2]);console.log("buffer3 內容: " + buffer3.toString()); //輸出為 buffer3 內容: 菜鳥教程 www.runoob.com

 

  

 

Node.js之Buffer

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.