From e04cb1e1fcb7c17353aa2c3bf4cf0a5eda492c90 Mon Sep 17 00:00:00 2001 From: Martii Date: Wed, 7 Oct 2015 21:14:16 -0600 Subject: [PATCH] doc: clarify API buffer.concat * Add a simple example for buffer.concat * Change grammar slightly. Fixes: #3219 Reviewed-By: James M Snell Reviewed-By: Trevor Norris PR-URL: https://github.com/nodejs/node/pull/3255 --- doc/api/buffer.markdown | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/doc/api/buffer.markdown b/doc/api/buffer.markdown index 22faef5563cb06..e4799bd2c073de 100644 --- a/doc/api/buffer.markdown +++ b/doc/api/buffer.markdown @@ -127,7 +127,7 @@ Example: ### Class Method: Buffer.concat(list[, totalLength]) * `list` {Array} List of Buffer objects to concat -* `totalLength` {Number} Total length of the buffers when concatenated +* `totalLength` {Number} Total length of the buffers in the list when concatenated Returns a buffer which is the result of concatenating all the buffers in the list together. @@ -139,6 +139,32 @@ If totalLength is not provided, it is read from the buffers in the list. However, this adds an additional loop to the function, so it is faster to provide the length explicitly. +Example: build a single buffer from a list of three buffers: + + var buf1 = new Buffer(10); + var buf2 = new Buffer(14); + var buf3 = new Buffer(18); + + buf1.fill(0); + buf2.fill(0); + buf3.fill(0); + + var buffers = [buf1, buf2, buf3]; + + var totalLength = 0; + for (var i = 0; i < buffers.length; i++) { + totalLength += buffers[i].length; + } + + console.log(totalLength); + var bufA = Buffer.concat(buffers, totalLength); + console.log(bufA); + console.log(bufA.length); + + // 42 + // + // 42 + ### Class Method: Buffer.compare(buf1, buf2) * `buf1` {Buffer}