2016-03-14 2 views
3

Как работает селектор JQuery внутри? Это функция js getElementById? Каково время запуска, чтобы получить объект из DOM?Время работы селектора JQuery

Например:

<html> 
    <div class='container'> 
     <div id='myID'> 
     <p class="myText">My Text</p> 
     </div> 
    </div> 
</html> 

И это JQuery код:

$(document).ready(function(){ 
    $("#myID").click(function(){ 
     $("myText").hide(); //Running time? 
    }); 
}); 
+1

Смотрите сами: http://james.padolsey.com/jquery/#v=1.11.2&fn=init –

ответ

1

Есть 2 способа получения времени выполнения, первый является console.time (только для отладки), второй является performance.now()

Разница между Date.now() и performance.now() - date.now от раундов до миллисекунд, от пер. До микросекунд

//This will console.log the result 
 
$(document).ready(function(){ 
 
    var myTimerName = 'myTimer1'; 
 
    $("#myID").click(function(){ 
 
     console.time(myTimerName); 
 
     $(".myText").hide(function(){ 
 
      console.timeEnd(myTimerName); 
 
     }); 
 
    }); 
 
}); 
 

 
//If you need to export this time, use window.performance.now() 
 
$(document).ready(function(){ 
 
    $("#myID").click(function(){ 
 
     var start = performance.now(); 
 
     $(".myText").hide(function(){ 
 
      var end = performance.now(); 
 
      $('#timer').text((end - start) + 'ms'); 
 
     }); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<html> 
 
    <div class='container'> 
 
     <div id='myID'> 
 
     <p class="myText">My Text</p> 
 
     </div> 
 
    </div> 
 
    <span id="timer"></span> 
 
</html>

Смежные вопросы