Escape Html special chars

JavaScript performance comparison

Revision 8 of this test case created by

Preparation code


      
      <script>
Benchmark.prototype.setup = function() {
  specialchars = "Long text & with many <errors>. \"some \" quotes / bla ";
  var escapeMap = (function() {
    var entityMap = {
      "&": "&amp;",
      "<": "&lt;",
      ">": "&gt;",
      '"': '&quot;',
      "'": '&#39;',
      "/": '&#x2F;'
    };
  
    return function escapeHtml(string) {
      return String(string).replace(/[&<>"'\/]/g, function(s) {
        return entityMap[s];
      });
    }
  })();
  
  var htmlEncode = function(s) {
    var el = document.createElement("div");
    el.innerText = el.textContent = s;
    return el.innerHTML;
  }
  
  var escape = function(string) {
    return String(string).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;').replace(/'/g, '&#x27;').replace(/\//g, '&#x2F;');
  };

};
</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
escapeMap
escapeMap(specialchars);
pending…
htmlEncode
htmlEncode(specialchars);
pending…
escape
escape(specialchars);
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