Как измерить время выполнения функции

Ваш вопрос несколько приводит к заметке. При сортировке структуры данных часто возникает желание сохранить относительный порядок объектов, которые считаются равными для целей сравнения. Это будет известно как устойчивый сорт .

Если вам абсолютно нужна эта функция, вы можете сделать sort(), который будет стабильным и затем узнайте о порядке относительно исходного списка.

Как и в самом python, я не считаю, что вы получаете гарантию того, какой элемент вы получите, когда вы назовете max(). Другие ответы дают ответ cpython, но другие реализации (IronPython, Jython) могут работать по-другому.

973
задан Julius A 6 October 2016 в 20:33
поделиться

3 ответа

Используя производительность. now():

var t0 = performance.now();

doSomething();   // <---- The function you're measuring time for 

var t1 = performance.now();
console.log("Call to doSomething took " + (t1 - t0) + " milliseconds.");

NodeJs: необходимо импортировать производительность class


, используя console.time: (non-standard) (living standard)

console.time('someFunction');

someFunction(); // Whatever is timed goes between the two "console.time"

console.timeEnd('someFunction');

Note:
Строка, передаваемая в методы time() и timeEnd() должна совпадать с
(для таймера, чтобы закончить работу так, как ожидается).

консоль. time() документация:

  1. NodeJS документация по
  2. MDN (со стороны клиента)
1585
ответ дан 19 December 2019 в 20:20
поделиться

Используйте Firebug, включите и Консоль и JavaScript. Нажмите Profile. Перезагрузка. Нажмите Profile снова. Просмотрите отчет.

18
ответ дан Stefan Mai 6 October 2016 в 20:33
поделиться

используйте новая Дата () .getTime ()

getTime (), метод возвращает количество миллисекунд с полуночи от 1 января 1970.

напр.

var start = new Date().getTime();

for (i = 0; i < 50000; ++i) {
// do something
}

var end = new Date().getTime();
var time = end - start;
alert('Execution time: ' + time);
609
ответ дан Sam Watkins 6 October 2016 в 20:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: