index.js
1 module.exports = process.hrtime || hrtime 2 3 // polyfil for window.performance.now 4 var performance = global.performance || {} 5 var performanceNow = 6 performance.now || 7 performance.mozNow || 8 performance.msNow || 9 performance.oNow || 10 performance.webkitNow || 11 function(){ return (new Date()).getTime() } 12 13 // generate timestamp or delta 14 // see http://nodejs.org/api/process.html#process_process_hrtime 15 function hrtime(previousTimestamp){ 16 var clocktime = performanceNow.call(performance)*1e-3 17 var seconds = Math.floor(clocktime) 18 var nanoseconds = Math.floor((clocktime%1)*1e9) 19 if (previousTimestamp) { 20 seconds = seconds - previousTimestamp[0] 21 nanoseconds = nanoseconds - previousTimestamp[1] 22 if (nanoseconds<0) { 23 seconds-- 24 nanoseconds += 1e9 25 } 26 } 27 return [seconds,nanoseconds] 28 }