console.time показывает разное время выполнения одной и той же функции - PullRequest
2 голосов
/ 04 октября 2019

Я использую console.time, чтобы показать время функции. Но я обнаружил, что он показывает разное время выполнения одной и той же функции.

Я упростил свою функцию, как показано ниже:

const findIP = (res) => {
    let arr = []
    arr = res.split(',')
}
console.time('1')
findIP('1,2,3,4,5,6,7,8,9,0')
console.timeEnd('1')
console.time('2')
findIP('1,2,3,4,5,6,7,8,9,0')
console.timeEnd('2')

Разница во времени между ними очень большая.

enter image description here

Я пытался запустить несколько раз. И это все еще стоит разное время.

enter image description here

Ответы [ 2 ]

2 голосов
/ 04 октября 2019

Чтобы процитировать ответ по следующей ссылке:

Если вы запускаете short несколько раз, ядро ​​V8 имеет JIT-компилятор, который оптимизирует этот фрагмент кода, поэтому он будет работать быстрее в следующий раз.

https://stackoverflow.com/a/54601440

0 голосов
/ 04 октября 2019

Попробуйте изменить значение аргумента, например,

console.time('1')
findIP('1,2,3,4,5,6,7,8,9,0')
console.timeEnd('1')
console.time('2')
findIP('1,2,3,4,43,6,7,8,9,4')
console.timeEnd('2')

Вы увидите примерно равное время

Причина этой разницы: Кэш браузера

Простое определение browser cache - это временное хранилище в памяти или на диске, на котором хранятся последние загруженные веб-страницы и / или вычисленный результат.

...