all files / perfnow.js/ perfnow.js

100% Statements 7/7
100% Branches 9/9
100% Functions 2/2
100% Lines 7/7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24                                 
/**
 * @file perfnow is a 0.1 kb performance.now high resolution timer polyfill with Date fallback
 * @author Daniel Lamb <dlamb.open.source@gmail.com>
 */
 
function perfnow(global) {
  // make sure we have an object to work with
  if (!('performance' in global)) {
    global.performance = {};
  }
  var perf = global.performance;
  // handle vendor prefixing
  global.performance.now = perf.now ||
    perf.mozNow ||
    perf.msNow ||
    perf.oNow ||
    perf.webkitNow ||
    // fallback to Date
    Date.now || function () {
      return new Date().getTime();
    };
}
perfnow(self);