SP selector

Benchmark created on


Preparation HTML

<div id="a">
</div>
<div class="b">
</div>

Setup

var get_id = function(id) {
        return document.getElementById(id);
        };
    var get_class = function(class_name) {
        return document.getElementsByClassName(class_name);
        };
    
    var SP1 = function(selector) {
        if (typeof selector === 'string') {
          var type = selector[0];
          var label = selector.substr(1);
    
          // id?
          if (type === '#') {
            return get_id(label);
            // class?
          } else if (type === '.') {
            return get_class(label)
          }
        }
    
        return selector;
        }
        
        
        
    var SP2 = function(selector) {
        if (typeof selector === 'string') {
          return selector[0] === '#' ? get_id(selector.substr(1)) : get_class(selector.substr(1));
        }
        return selector;
        }

Test runner

Ready to run.

Testing in
TestOps/sec
SP1
var a = SP1('#a');
SP1('.b');
SP1(a);
ready
SP2
var a = SP2('#a');
SP2('.b');
SP2(a);
ready

Revisions

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