Concatenating

Benchmark created on


Setup

function makeString(length) {
    let result = '';
    const characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
    const charactersLength = characters.length;
    let counter = 0;
    while (counter < length) {
      result += characters.charAt(Math.floor(Math.random() * charactersLength));
      counter += 1;
    }
    return result;
}

const sizeOfRandomOptions = 100;
const sizeOfString = 10000;
const numberOfConcats = 100000;

let strings = Array(sizeOfRandomOptions).fill(0).map(x => {
    return makeString(1000)
});

Test runner

Ready to run.

Testing in
TestOps/sec
+=
function testConcat() {
    let str = '';
    for (let i=0; i<numberOfConcats; i++) {
        var pos = Math.floor(Math.random()*sizeOfRandomOptions);
        str += strings[pos] + ','
    }

    return str;
}

testConcat()
ready
Array Join
function testJoin() {
    let arr = [];
    for (let i=0; i<numberOfConcats; i++) {
        var pos = Math.floor(Math.random()*sizeOfRandomOptions);
        arr.push(strings[pos]);
    }

    let str = strings.join(',');
    return str;
}

testJoin()
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.