Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
<!--[if IE]>
  <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<style>
  article, aside, figure, footer, header, hgroup, 
  menu, nav, section { display: block; }
</style>
</head>
<body>
  <div id="results">
    <button id="test1">Test1: time for $(".holder")</button>
    <button id="test2">Test2: time for $(".holder", "#context")</button>
    <button id="test3">Test3: time for $(".holder", $("#context"))</button>
    <button id="test4">Test4: time for $(".holder", $context)</button>
    <button id="test5">Test5: time for $context.find(".holder")</button>
    <ul></ul>
  </div>
</body>
</html>
 
$(document).ready(function(){
    var X = 1;
    $('#results').bind('click', function(e){
      var $elem = $(e.target);
      var id = $elem.attr('id');
      var x = 0;
      var time_count = 0;
      var flag = 1;
      time_count = (new Date()).getTime();
      switch(id){
        case 'test1':
          for(var i=0; i<X; i++){
            x = $(".holder").selector;
          }
        break;
        case 'test2':
          for(var i=0; i<X; i++){
            x = $(".holder", "#context").selector;
          }
        break;
        case 'test3':
          for(var i=0; i<X; i++){
            x = $(".holder", $("#context")).selector;
          }
          break;
        case 'test4':
          var $context = $("#context");
          for(var i=0; i<X; i++){
            x = $(".holder", $context).selector;
          }
        break;
        case 'test5':
          var $context = $("#context");
          for(var i=0; i<X; i++){
            x = $context.find(".holder").selector;
          }
        break;
        default: flag = 0;
      }
      if(flag==1){
        time_count = (new Date()).getTime() - time_count;
        AddToList($elem.text()+' = '+time_count+' msec');
      }
    });
  
    $('body').append(CreateNDepthTree(1000));
    
  });
  function AddToList(str){
    var $list = $('#results > ul');
    $list.append('<li>'+str+'</li>');
  }
  
  function AccessXTimes($obj, X){
    var x = 0;
    var time_count = (new Date()).getTime();
    for(var i=0; i<X; i++){
    x = $obj.selector;
    }
    time_count = (new Date()).getTime() - time_count;
  }
  
  function CreateNDepthTree(N){
    if(N==2)
      return $('<div/>',{id: 'context'}).append(CreateNDepthTree(N-1));
    else if(N==1)
      return $('<div></div>',{class: 'holder'}).html('<h3>Leaf</h3>');
    else
      return $('<div/>').append(CreateNDepthTree(N-1));
  }
Output

This bin was created anonymously and its free preview time has expired (learn why). — Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers