gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

Node.js經典技巧之Buffer(總結分享)

本篇文章給大家帶來了關于nodejs中Buffer的相關知識,在Node.js中,Buffer類是隨Node內核一起發布的核心庫,Buffer庫為Node.js帶來了一種存儲原始數據的方法,希望對大家有幫助。

Node.js經典技巧之Buffer(總結分享)

JavaScript 語言自身只有字符串數據類型,沒有二進制數據類型。

但在處理像 TCP 流或文件流時,必須使用到二進制數據。因此在 Node.js 中,定義了一個 Buffer 類,該類用來創建一個專門存放二進制數據的緩存區。

在 Node.js 中,Buffer 類是隨 Node 內核一起發布的核心庫。Buffer 庫為 Node.js 帶來了一種存儲原始數據的方法,可以讓 Node.js 處理二進制數據,每當需要在 Node.js 中處理 I/O 操作中移動的數據時,就有可能使用 Buffer 庫。

原始數據存儲在 Buffer 類的實例中。

一個 Buffer 類似于一個整數數組,但它對應于 V8 堆內存之外的一塊原始內存。

創建 Buffer 類

Node Buffer 類可以通過多種方式來創建。

方法 1

創建長度為 10 字節的 Buffer 實例:

var buf = new Buffer(10);

方法 2

通過給定的數組創建 Buffer 實例:

var buf = new Buffer([10, 20, 30, 40, 50]);

方法 3

通過一個字符串來創建 Buffer 實例:

var buf = new Buffer("bianchengsanmei", "utf-8");

utf-8 是默認的編碼方式,此外它同樣支持以下編碼:“ascii”, “utf8”, “utf16le”, “ucs2”, “base64” 和 “hex”。

寫入緩沖區

語法

寫入 Node 緩沖區的語法如下所示:

buf.write(string[, offset[, length]][, encoding])

參數

參數描述如下:

  • string – 寫入緩沖區的字符串。
  • offset – 緩沖區開始寫入的索引值,默認為 0 。
  • length – 寫入的字節數,默認為 buffer.length
  • encoding – 使用的編碼。默認為 ‘utf8’ 。

返回值

返回實際寫入的大小。如果 buffer 空間不足, 則只會寫入部分字符串。
實例

buf = new Buffer(256);len = buf.write("bi");len = buf.write("bianchengsanmei");  console.log("寫入字節數 : "+  len);

執行以上代碼,輸出結果為:

$node main.js 寫入字節數 : 15

從緩沖區讀取數據

語法

讀取 Node 緩沖區數據的語法如下所示:

buf.toString([encoding[,start[,end]]])

參數

參數描述如下:

  • encoding – 使用的編碼。默認為 ‘utf8’ 。

  • start – 指定開始讀取的索引位置,默認為 0。

  • end – 結束位置,默認為緩沖區的末尾。

返回值

解碼緩沖區數據并使用指定的編碼返回字符串。

實例

buf = new Buffer(26);for (var i = 0 ; i < 26 ; i++) {   buf[i] = i + 97;}  console.log( buf.toString('ascii'));         // 輸出: abcdefghijklmnopqrstuvwxyzconsole.log( buf.toString('ascii',0,5));     // 輸出: abcdeconsole.log( buf.toString('utf8',0,5));      // 輸出: abcdeconsole.log( buf.toString(undefined,0,5));   // 使用 'utf8' 編碼, 并輸出: abcde

執行以上代碼,輸出結果為:

$ node main.js abcdefghijklmnopqrstuvwxyz abcde abcde abcde

將 Buffer 轉換為 JSON 對象

語法

將 Node Buffer 轉換為 JSON 對象的函數語法格式如下:

buf.toJSON()

返回值

返回 JSON 對象。

實例

var buf = new Buffer('bianchengsanmei'); var json = buf.toJSON(buf);  console.log(json);

執行以上代碼,輸出結果為:

{ type: 'Buffer',   data: [ 119, 119, 119, 46, 119, 51, 99, 115, 99, 104, 111, 111, 108, 46, 99, 110 ] }

緩沖區合并

語法

Node 緩沖區合并的語法如下所示:

Buffer.concat(list[, totalLength])

參數

參數描述如下:

  • list – 用于合并的 Buffer 對象數組列表。
  • totalLength – 指定合并后 Buffer 對象的總長度。

返回值

返回一個多個成員合并的新 Buffer 對象。

實例

var buffer1 = new Buffer('編程三昧 '); var buffer2 = new Buffer('bi'); var buffer2 = new Buffer('bianchengsanmei'); var buffer3 = Buffer.concat([buffer1,buffer2]); console.log("buffer3 內容: " + buffer3.toString());

執行以上代碼,輸出結果為:

buffer3 內容: 編程三昧 bianchengsanmei

緩沖區比較

語法

Node Buffer 比較的函數語法如下所示, 該方法在 Node.js v0.12.2 版本引入:

buf.compare(otherBuffer);

參數

參數描述如下:

  • otherBuffer – 與 buf 對象比較的另外一個 Buffer 對象。

返回值

返回一個數字,表示 bufotherBuffer 之前,之后或相同。

實例

var buffer1 = new Buffer('ABC');var buffer2 = new Buffer('ABCD');var result = buffer1.compare(buffer2);  if(result < 0) {    console.log(buffer1 + " 在 " + buffer2 + "之前");}else if(result == 0){    console.log(buffer1 + " 與 " + buffer2 + "相同");}else {    console.log(buffer1 + " 在 " + buffer2 + "之后");}

執行以上代碼,輸出結果為:

ABC在ABCD之前

拷貝緩沖區

語法

Node 緩沖區拷貝語法如下所示:

buf.copy(target[, targetStart[, sourceStart[, sourceEnd]]])

參數

參數描述如下:

  • targetBuffer – 要拷貝的 Buffer 對象。
  • targetStart – 數字, 可選, 默認: 0
  • sourceStart – 數字, 可選, 默認: 0
  • sourceEnd – 數字, 可選, 默認: buffer.length

返回值

沒有返回值。

實例

var buffer1 = new Buffer('ABC'); // 拷貝一個緩沖區var buffer2 = new Buffer(3); buffer1.copy(buffer2); console.log("buffer2 content: " + buffer2.toString());

執行以上代碼,輸出結果為:

buffer2 content: ABC

緩沖區裁剪

Node 緩沖區裁剪語法如下所示:

buf.slice([start[, end]])

參數

參數描述如下:

  • start – 數字, 可選, 默認: 0
  • end – 數字, 可選, 默認: buffer.length

返回值

返回一個新的緩沖區,它和舊緩沖區指向同一塊內存,但是從索引 start 到 end 的位置剪切。

實例

var buffer1 = new Buffer('youj'); // 剪切緩沖區var buffer2 = buffer1.slice(0,2); console.log("buffer2 content: " + buffer2.toString());

執行以上代碼,輸出結果為:

buffer2 content: yo

緩沖區長度

語法 Node 緩沖區長度計算語法如下所示:

buf.length;

返回值

返回 Buffer 對象所占據的內存長度。

實例

var buffer = new Buffer('bianchengsanmei'); //  緩沖區長度console.log("buffer length: " + buffer.length);

執行以上代碼,輸出結果為:

buffer length: 15

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
久久久久久久久久一区二区| 成人性生交免费看| 300部国产真实乱| 污污的网站免费| 日韩精品你懂的| 国产成人无码av在线播放dvd| 天天爱天天做天天操| 久久久久久久久久久久久久久国产 | 亚洲高清在线免费观看| 欧美精品99久久| koreanbj精品视频一区| 国产精品免费看久久久无码| 久久综合在线观看| 91视频成人免费| 日本a级片在线观看| 免费看av软件| 国产美女永久无遮挡| 国产精品videossex国产高清 | 亚洲色成人www永久在线观看| 四虎4hu永久免费入口| 国产精品无码免费专区午夜| 99在线精品免费视频| 亚洲人成无码www久久久| 成人性生生活性生交12| 污网站在线免费| 欧美一级爱爱视频| 97视频在线免费播放| 污版视频在线观看| 中文字幕55页| 欧美,日韩,国产在线| 国产成人手机视频| 国产成人在线小视频| 青青草原av在线播放| 欧美日韩中文不卡| 性高湖久久久久久久久aaaaa| 国产午夜福利在线播放| 天天影视综合色| 亚洲色欲久久久综合网东京热| 日韩视频免费在线播放| 黄色三级中文字幕| 日本不卡一区在线| www.射射射| 二级片在线观看| 国产免费视频传媒| 免费看日本黄色| 亚洲欧美日韩不卡| 怡红院亚洲色图| 久草青青在线观看| 人人妻人人添人人爽欧美一区| 亚洲第一成肉网| 激情 小说 亚洲 图片: 伦| 青青在线免费观看| 国产精品igao激情视频| 亚洲综合激情视频| a在线观看免费视频| 一区二区三区免费播放| 中文字幕无码精品亚洲35| 精品国偷自产一区二区三区| 特级毛片在线免费观看| 91看片破解版| 日本xxx免费| 国产91av视频在线观看| 国产黑丝在线视频| 久久久久久久久影视| 日韩视频 中文字幕| 全黄性性激高免费视频| 国产免费一区二区视频| 日韩中字在线观看| 亚洲中文字幕无码专区| 久久国产乱子伦免费精品| 毛葺葺老太做受视频| 日韩av加勒比| 久久久噜噜噜www成人网| 日日碰狠狠丁香久燥| 老头吃奶性行交视频| 日本黄大片一区二区三区| 亚洲欧美日韩一二三区| 97在线免费视频观看| 黄色片网址在线观看| 日本激情视频在线| 国产精品videossex国产高清| 97超碰在线人人| 污版视频在线观看| 波多野结衣乳巨码无在线| 8x8x最新地址| 欧美精品久久久久久久免费| 国产精品夜夜夜爽张柏芝| 国产97色在线 | 日韩| 国产成人永久免费视频| 男操女免费网站| 婷婷无套内射影院| 精品少妇人妻av一区二区| 一本色道无码道dvd在线观看| 黄黄视频在线观看| 亚洲天堂av免费在线观看| 免费看a级黄色片| 欧美日韩亚洲一| 大陆极品少妇内射aaaaa| 国产91porn| 黄色网络在线观看| 三级av免费看| 中文字幕制服丝袜在线| 亚洲第一成肉网| 九九精品久久久| 亚洲视频一二三四| www.com黄色片| 亚洲综合日韩欧美| 午夜宅男在线视频| 日韩在线不卡一区| 永久av免费在线观看| 中文字幕第一页在线视频| 冲田杏梨av在线| 亚洲欧美一二三| 日韩不卡视频一区二区| 日本美女爱爱视频| 久久av综合网| 3d动漫一区二区三区| 无码人妻丰满熟妇区毛片| 超碰人人草人人| 日韩欧美国产综合在线| 三级在线免费看| 国产日本欧美在线| 国产二级片在线观看| 91香蕉视频污版| 天天想你在线观看完整版电影免费| 日韩精品视频在线观看视频| 日韩av片在线看| 日韩va在线观看| 欧美黄网在线观看| 日韩免费一级视频| 一区二区三区四区免费观看| 狠狠97人人婷婷五月| 91丨九色丨蝌蚪| 欧美一级在线看| 精品91一区二区三区| 欧美亚洲另类色图| 亚洲欧美一二三| 波多结衣在线观看| 国产又黄又大又粗视频| 伊人久久在线观看| 91网址在线观看精品| 波多野结衣xxxx| 欧美伦理片在线看| 国产xxxxx在线观看| 狠狠干 狠狠操| 公共露出暴露狂另类av| 一级黄色片国产| 99草草国产熟女视频在线| 欧美二区在线视频| 中文精品无码中文字幕无码专区| 懂色av粉嫩av蜜臀av| www.-级毛片线天内射视视| av在线网站免费观看| 欧美精品久久96人妻无码| 成年人黄色在线观看| 天堂av免费看| aa视频在线播放| 116极品美女午夜一级| 成人av一级片| 免费大片在线观看| 欧美国产日韩另类| 日韩中文字幕在线不卡| 国产婷婷一区二区三区| 丰满爆乳一区二区三区| 欧美v在线观看| 亚洲欧美日韩精品一区| 红桃视频一区二区三区免费| 免费看av软件| 激情网站五月天| 中国一级黄色录像| 熟女性饥渴一区二区三区| 亚欧激情乱码久久久久久久久| 狠狠精品干练久久久无码中文字幕 | 91视频 - 88av| 欧美一级片中文字幕| 免费观看黄色大片| 日韩精品一区二区三区久久| 免费激情视频在线观看| 色呦呦网站入口| 成人在线观看黄| 欧美视频在线第一页| 日韩av片免费观看| 日本成人在线免费视频| 亚洲区成人777777精品| 国内外成人免费在线视频| 欧美精品一区免费| 91国在线高清视频| 中文av字幕在线观看| 日韩欧美在线免费观看视频| 路边理发店露脸熟妇泻火| 国产传媒免费观看| 中文字幕第100页| 日韩精品无码一区二区三区免费| 国产亚洲视频一区| 欧美韩国日本在线| 三级黄色片免费观看| 日本精品免费在线观看| 欧美乱做爰xxxⅹ久久久| 日本在线一二三区| 日韩在线视频在线观看|