Skip to content

Instantly share code, notes, and snippets.

@mkazantsev
Created January 20, 2013 05:05
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mkazantsev/4576766 to your computer and use it in GitHub Desktop.
Save mkazantsev/4576766 to your computer and use it in GitHub Desktop.
String Concatenation vs. Array.join() benchmarking for Node.js with Benchmark.js.
var Benchmark = require('benchmark'),
suite = Benchmark.Suite();
var COUNT = process.argv[2] - 0;
console.log(COUNT);
var data = [];
for (var i = 0; i < COUNT; i++) {
data.push('string');
}
suite.add('Plain concatenation', function() {
var res = '';
for (var i = 0; i < COUNT; i++) {
res += data[i];
}
})
.add('String array join()', function() {
data.join('')
})
.on('cycle', function(event) {
console.log(String(event.target));
})
.on('complete', function() {
console.log('Fastest is ' + this.filter('fastest').pluck('name'));
})
.run({ 'async': true });
@mkazantsev
Copy link
Author

Copy link

ghost commented May 28, 2015

Not fair..
For real string creation, you need '1 array per 1 string'.
And you don't need to save string into array and get string from array if you use string +=

See: https://gist.github.com/ceram1/7e98b0a139185e80f22b

@notslang
Copy link

@mkazantsev: your link is broken

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment