Как измерить время выполнения кода в VBScript или JavaScript?

Что хороший путь состоит в том, чтобы измерить время выполнения кода в VBScript?

Или сбой этого, как сделать это в JavaScript?

16
задан Peter Mortensen 31 December 2009 в 16:09
поделиться

6 ответов

Для VBScript можно использовать таймер:

StartTime = Timer()
EndTime = Timer()
Response.Write("Seconds to 2 decimal places: " & FormatNumber(EndTime - StartTime, 2))

или ASP Profiler (то есть для окружения ASP.)

Для JavaScript можно использовать Date:

var start = new Date().getTime()
alert("Milliseconds: " + (new Date().getTime() - start))

Firebug также имеет профилировщик для JavaScript.

.
39
ответ дан 30 November 2019 в 15:51
поделиться

Для JavaScript я бы порекомендовал использовать профайлер, подобный встроенному в Firebug:

alt text
(исходник: getfirebug. com)

Другая альтернатива может быть та, которая включена в Google Chrome, или IE8

Если вы хотите сделать это программно, вы можете использовать объекты Date для получения разницы во времени:

var startTime = new Date();
// ...
// ...
var endTime = new Date();
var delta = endTime - startTime; // difference in milliseconds
4
ответ дан 30 November 2019 в 15:51
поделиться

Это - отличная статья о времени JavaScript, из книги "Даже более быстрые сайты". Две вещи, которые следует помнить, это то, что объекты JavaScript Date часто имеют разрешение до 15 мс (это варьируется в зависимости от браузера и операционной системы), и большинство профайлеров имеют эффект наблюдателя. Обратите внимание, что Google Speed Tracer (новый со времени публикации статьи) заканчивает процесс и собирает данные асинхронно, чтобы минимизировать эффект наблюдателя.

.
0
ответ дан 30 November 2019 в 15:51
поделиться
d = new Date();
x = 0;
for (i = 0; i < 1e7; ++i) { x += i; }
d2 = new Date();
d2 - d

12296

Используйте объект Date, который возвращает значениеOf() в миллисекундах с 1 января 1970 года. Затем можно вычитать время, чтобы получить истекшее время в миллисекундах.

.
0
ответ дан 30 November 2019 в 15:51
поделиться

Для работы с JavaScript используйте профилировщики Firebug или IE, или бесплатный DynaTrace AJAX-профилировщик редакции.

1
ответ дан 30 November 2019 в 15:51
поделиться

Это действительно зависит от того, что вы пытаетесь измерить?

Если вы что-то тестируете и хотите знать, как долго проходят определенные отрезки, вы можете просто объявить переменную времени начала и остановки, а затем сделать разницу между ними.....

0
ответ дан 30 November 2019 в 15:51
поделиться
Другие вопросы по тегам:

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