Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   бенчмаркинг функция (https://javascript.ru/forum/css-html/53333-benchmarking-funkciya.html)

loading321 29.01.2015 20:36

бенчмаркинг функция
 
function floorMath(x) { return Math.floor(x); }
function floorXor(x) { return x^0; }

function bench(f) {
  var date = new Date();
  for (var i=0.5; i<1000000; i++) f(i);
  return new Date() - date;
}

alert('Время floorMath: ' + bench(floorMath) + 'мс');
alert('Время floorXor: ' + bench(floorXor) + 'мс');


объясните пожал. эту задачу не понял порядок выполнения что делает например f(i) и чему равен (х)

BETEPAH 30.01.2015 13:23

Функция floorMath() выполняет округление вниз с помощью стандартного математического метода
Функция floorXor() делает то же самое с помощью хака с XOR'ом
Функция bench() сравнивает скорости выполнения этих методов на миллионном цикле. Т.е. f(i) в каждом цикле выполняет один из этих методов.
Вопрос "чему равен (х)" некорректный. (x) это параметр, который получает функция.


Часовой пояс GMT +3, время: 05:44.