jQuery vs DOM performance
I have written this code to benchmark jQuery vs DOM performance. The performance is defferent in every browser with the worst performer Firefox X25 slower running jQuery.
Is this expected behavior? I wasn't expecting to see such an impact with jQuery.


    <!DOCTYPE HTML>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Untitled Document</title>
    <script  type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js"></script>
    <script language="JavaScript" type="text/javascript">
    $(function () {
    	var i=0;
    	var dtb = new Date();
    	while(i < 1000000)
    	{
    		var index = Math.floor(Math.random()*31) + 1;
    		i++;
    		var elem = document.getElementById('d'+index);
    	}
    	var dte = new Date();
    	alert(dte-dtb);
    	
    	i=0;
    	var dtb2 = new Date();
    	var body = document.getElementById('cog');
    	while(i < 1000000)
    	{
    		var index = Math.floor(Math.random()*31) + 1;
    		i++;
    		var elem = body.childNodes[index];
    	}
    	var dte2 = new Date();
    	alert(dte2-dtb2);
    	
    	i=0;
    	var dtb3 = new Date();
    	while(i < 1000000)
    	{
    		var index = Math.floor(Math.random()*31) + 1;
    		i++;
    		var $elem = $("#d"+index);
    	}
    	var dte3 = new Date();
    	alert(dte3-dtb3);
    });
    
    </script>
    </head>
    
    <body id="cog">
    <div id="d1">sdffgdfd@@@</div><div id="d2">sddfgfd</div><div id="d3">sdasfd</div><div id="d4">swqedfd</div><div id="d5">sddfdsfd</div><div id="d6">sdfd</div><div id="d7">sdsdffd</div><div id="d8">sdfsdfd</div><div id="d9">sdfkjlkjd</div><div id="d10">sdm ,nfd</div><div id="d11">sdcxvfd</div><div id="d12">sdxzcmfd</div><div id="d13">shgjmdfd</div><div id="d14">sdfvcbd</div><div id="d15">sdf;k;d</div><div id="d16">sdjklfd</div><div id="d17">sd412fd</div><div id="d18">sdfkyhkd</div><div id="d19">sdasdfd</div><div id="d2">sdhdfgsfd</div><div id="d21">sdfdsad</div><div id="d22">sdasdfd</div><div id="d23">sddfgdffd</div><div id="d24">sdklugiffd</div><div id="d25">sddfsafd</div><div id="d26">sdfq21fd</div><div id="d27">42324sdfd</div><div id="d28">sdnhmjkgufksfd</div><div id="d29">sdqwefd</div><div id="d30">sdrterfd</div>
    </body>
    </html>


jQuery vs DOM performance
===

I have written this code to benchmark jQuery vs DOM performance. The performance is defferent in every browser with the worst performer Firefox X25 slower running jQuery.
Is this expected behavior? I wasn't expecting to see such an impact with jQuery.


    <!DOCTYPE HTML>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Untitled Document</title>
    <script  type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js"></script>
    <script language="JavaScript" type="text/javascript">
    $(function () {
    	var i=0;
    	var dtb = new Date();
    	while(i < 1000000)
    	{
    		var index = Math.floor(Math.random()*31) + 1;
    		i++;
    		var elem = document.getElementById('d'+index);
    	}
    	var dte = new Date();
    	alert(dte-dtb);
    	
    	i=0;
    	var dtb2 = new Date();
    	var body = document.getElementById('cog');
    	while(i < 1000000)
    	{
    		var index = Math.floor(Math.random()*31) + 1;
    		i++;
    		var elem = body.childNodes[index];
    	}
    	var dte2 = new Date();
    	alert(dte2-dtb2);
    	
    	i=0;
    	var dtb3 = new Date();
    	while(i < 1000000)
    	{
    		var index = Math.floor(Math.random()*31) + 1;
    		i++;
    		var $elem = $("#d"+index);
    	}
    	var dte3 = new Date();
    	alert(dte3-dtb3);
    });
    
    </script>
    </head>
    
    <body id="cog">
    <div id="d1">sdffgdfd@@@</div><div id="d2">sddfgfd</div><div id="d3">sdasfd</div><div id="d4">swqedfd</div><div id="d5">sddfdsfd</div><div id="d6">sdfd</div><div id="d7">sdsdffd</div><div id="d8">sdfsdfd</div><div id="d9">sdfkjlkjd</div><div id="d10">sdm ,nfd</div><div id="d11">sdcxvfd</div><div id="d12">sdxzcmfd</div><div id="d13">shgjmdfd</div><div id="d14">sdfvcbd</div><div id="d15">sdf;k;d</div><div id="d16">sdjklfd</div><div id="d17">sd412fd</div><div id="d18">sdfkyhkd</div><div id="d19">sdasdfd</div><div id="d2">sdhdfgsfd</div><div id="d21">sdfdsad</div><div id="d22">sdasdfd</div><div id="d23">sddfgdffd</div><div id="d24">sdklugiffd</div><div id="d25">sddfsafd</div><div id="d26">sdfq21fd</div><div id="d27">42324sdfd</div><div id="d28">sdnhmjkgufksfd</div><div id="d29">sdqwefd</div><div id="d30">sdrterfd</div>
    </body>
    </html>

