mirror of
https://github.com/syumai/workers.git
synced 2025-03-11 01:39:11 +00:00
37 lines
1.1 KiB
JavaScript
37 lines
1.1 KiB
JavaScript
// @license http://opensource.org/licenses/MIT
|
|
// copyright Paul Irish 2015
|
|
|
|
|
|
// Date.now() is supported everywhere except IE8. For IE8 we use the Date.now polyfill
|
|
// github.com/Financial-Times/polyfill-service/blob/master/polyfills/Date.now/polyfill.js
|
|
// as Safari 6 doesn't have support for NavigationTiming, we use a Date.now() timestamp for relative values
|
|
|
|
// if you want values similar to what you'd get with real perf.now, place this towards the head of the page
|
|
// but in reality, you're just getting the delta between now() calls, so it's not terribly important where it's placed
|
|
|
|
|
|
(function(){
|
|
|
|
if ("performance" in globalThis == false) {
|
|
globalThis.performance = {};
|
|
}
|
|
|
|
Date.now = (Date.now || function () { // thanks IE8
|
|
return new Date().getTime();
|
|
});
|
|
|
|
if ("now" in globalThis.performance == false){
|
|
|
|
var nowOffset = Date.now();
|
|
|
|
if (performance.timing && performance.timing.navigationStart){
|
|
nowOffset = performance.timing.navigationStart
|
|
}
|
|
|
|
globalThis.performance.now = function now(){
|
|
return Date.now() - nowOffset;
|
|
}
|
|
}
|
|
|
|
})();
|