.replace() vs. .split().join() vs .replaceAll()

JavaScript performance comparison

Revision 73 of this test case created by

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  var mystring = 'okay this is a long long long long string';
  var regexObj = new RegExp(".","gm");
  var regexShort = /\./g;

};
</script>

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
.replace(/ /g,' ')
result = mystring.replace(/ /g,'');
pending…
.replace(/ /g,' ')
result = mystring.replace(/\s+/g,"");
pending…
.split(' ').join('')
result = mystring.split(' ').join('');
pending…
.split(/\s+/g).join('')
result = mystring.split(/\s+/g).join('');
pending…
.split(/ /g).join('')
result = mystring.split(/ /g).join('');
pending…
.replace(" ","")
result = mystring.replace(" ","");
pending…
replace_long
function replace_long(oldS,newS,fullS) {
   var fullS = fullS != null ? fullS.toString() : '',
      i = 0;

   while (i < fullS.length) {
      if (fullS.substring && fullS.substring(i,i+oldS.length) == oldS) {
         fullS = fullS.substring(0,i)+newS+fullS.substring(i+oldS.length,fullS.length);
         i += newS.length;
      } else {
         i++;
      }
   }
   return fullS;
}

result = replace_long(mystring," ","");
pending…

Compare results of other browsers

Revisions

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

0 Comments