时间在节点的第一个调用函数
我有以下代码:
let startTime; let stopTime; const arr = [1, 2, 3, 8, 5, 0, 110, 4, 4, 16, 3, 8, 7, 56, 1, 2, 3, 8, 5, 0, 110, 16, 3, 8, 7, 56]; const sum = 63; durationTime = (start, stop, desc) => { let duration = (stop - start); console.info('Duration' + ((desc !== undefined) ? '(' + desc + ')' : '') + ': ' + duration + 'ms'); }; findPair = (arr, sum) => { let result = []; const filterArr = arr.filter((number) => { return number <= sum; }); filterArr.forEach((valueFirst, index) => { for (let i = index + 1; i < filterArr.length; i++) { const valueSecond = filterArr[i]; const checkSum = valueFirst + valueSecond; if (sum === checkSum) { result.push([valueFirst, valueSecond]); } } }); //console.info(result); }; for (let i = 0; i < 5; i++) { startTime = new Date(); findPair(arr, sum); stopTime = new Date(); durationTime(startTime, stopTime); }
当我在nodejs(v8.9.3)本地运行时,控制台中的结果是:
持续时间(0):4ms
持续时间(1):0ms
持续时间(2):0ms
持续时间(3):0ms
持续时间(4):0ms
我的问题:为什么第一次调用'findPair'需要4ms而其他调用只有0ms?