Здравствуйте, только-что копался в бэкапах и нашел небольшой скрипт, под названием Who Faster. Мне всегда было интиресно, что быстрее сработает if else if или switch, Array или Object, while или for, а также проверить на скорость небольшие скрипты, для этого в Firebug есть замечательные инструменты, но по каким-то причинам они меня не устраивали, по каким уже и не вспомню.
В общем тогда, я и решил написать этот скрипт, состоящий из парочки не хитрых функция, и показывающий, кто все-таки быстрее ! :)
В общем тогда, я и решил написать этот скрипт, состоящий из парочки не хитрых функция, и показывающий, кто все-таки быстрее ! :)
В Поле пишите //CODE[название скрипта]: .... //CODE: ...
Птицей "Use Loop" можно установить сколько раз прокручивать скрипт, чтобы победителя лучше видно было :).
Сам код(именно он и выполняется в программке выше):
function _Go(toTest,__length){ var __end = 0, __start = 0; var __toEval = '__start = +new Date;'+ (__length>0?'for(var __i=0;__i<__length;__i++){'+ toTest+'}':toTest)+ '__end = +new Date - __start; '; try{ eval(__toEval); }catch(err){ __end = err; } return __end; } function _test(){ var txt_field= document.getElementById('_script_1'); var max_loop=parseInt(document.getElementById('max_loop').value); var script = txt_field.value; var res = document.getElementById("_res"); max_loop = max_loop>0?max_loop:0; var arr_script = script.match(/\/\/CODE[^:]*:[^\/\/CODE]*/g); if(arr_script[0]=='')arr_script.shift(); var _res = ""; var tmp = []; for(var i=0,l=arr_script.length;i<l;i++){ tmp = arr_script[i].match(/\/\/CODE([^:]*):([^¬]*)/); // _res += "<div><i>"+(tmp[1]==''?i:tmp[1])+ ": </i><span>"+_Go(tmp[2], max_loop)+"</span></div>"; } res.innerHTML = _res; } function de(name){ var obj = document.getElementById(name); if(obj.disabled){ obj.disabled = false; }else{ obj.disabled = 'disabled'; obj.value = ''; } }
4 комментария:
Может быть кто-нить поделится ссылочкой на что-нибудь из этой же тематики
привет, Таких небывает
Отправить комментарий