From 01d308fd6e5f7bdc63554047ccc3c028d4ce2fc2 Mon Sep 17 00:00:00 2001 From: Raina Batwing Date: Mon, 22 Dec 2014 09:38:04 +0900 Subject: [PATCH] bs58: encode() speed up final string conversion. With this change, bs58.encode with 32-digit input runs in about 80% the time the previous version took. --- lib/bs58.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/bs58.js b/lib/bs58.js index b523a25..b7363cc 100644 --- a/lib/bs58.js +++ b/lib/bs58.js @@ -39,7 +39,12 @@ function encode(buffer) { // deal with leading zeros for (i = 0; buffer[i] === 0 && i < buffer.length - 1; i++) digits.push(0) - return digits.reverse().map(function(digit) { return ALPHABET[digit] }).join('') + // convert digits to a string + var stringOutput = "" + for (var i = digits.length - 1; i >= 0; i--) { + stringOutput = stringOutput + ALPHABET[digits[i]] + } + return stringOutput } function decode(string) {