731 lines
14 KiB
JSON
731 lines
14 KiB
JSON
{
|
|
"title":"High Resolution Time API",
|
|
"description":"Method to provide the current time in sub-millisecond resolution and such that it is not subject to system clock skew or adjustments. Called using `performance.now()`",
|
|
"spec":"https://www.w3.org/TR/hr-time/",
|
|
"status":"rec",
|
|
"links":[
|
|
{
|
|
"url":"https://developer.mozilla.org/en-US/docs/Web/API/Performance.now()",
|
|
"title":"MDN Web Docs - Performance.now"
|
|
},
|
|
{
|
|
"url":"https://developer.chrome.com/blog/when-milliseconds-are-not-enough-performance-now/",
|
|
"title":"HTML5Rocks article"
|
|
},
|
|
{
|
|
"url":"https://www.sitepoint.com/discovering-the-high-resolution-time-api/",
|
|
"title":"SitePoint article"
|
|
},
|
|
{
|
|
"url":"https://audero.it/demo/high-resolution-time-api-demo.html",
|
|
"title":"Demo"
|
|
}
|
|
],
|
|
"bugs":[
|
|
{
|
|
"description":"Older versions of Chrome and Opera on Windows have only millisecond precision. The fractional part is always near the very start or the very end of a millisecond. ([issue #158234](https://code.google.com/p/chromium/issues/detail?id=158234))."
|
|
},
|
|
{
|
|
"description":"The Spy in the Sandbox vulnerability is a class of JavaScript-based exploits that leverage the High Resolution Time API to detect CPU cache hit/miss on chosen plaintext data placed into cache by an attacker. [Full security research paper is here](http://arxiv.org/abs/1502.07373)"
|
|
}
|
|
],
|
|
"categories":[
|
|
"JS API"
|
|
],
|
|
"stats":{
|
|
"ie":{
|
|
"5.5":"n",
|
|
"6":"n",
|
|
"7":"n",
|
|
"8":"n",
|
|
"9":"n",
|
|
"10":"y",
|
|
"11":"y"
|
|
},
|
|
"edge":{
|
|
"12":"y",
|
|
"13":"y",
|
|
"14":"y",
|
|
"15":"y",
|
|
"16":"y",
|
|
"17":"y",
|
|
"18":"y",
|
|
"79":"y",
|
|
"80":"y",
|
|
"81":"y",
|
|
"83":"y",
|
|
"84":"y",
|
|
"85":"y",
|
|
"86":"y",
|
|
"87":"y",
|
|
"88":"y",
|
|
"89":"y",
|
|
"90":"y",
|
|
"91":"y",
|
|
"92":"y",
|
|
"93":"y",
|
|
"94":"y",
|
|
"95":"y",
|
|
"96":"y",
|
|
"97":"y",
|
|
"98":"y",
|
|
"99":"y",
|
|
"100":"y",
|
|
"101":"y",
|
|
"102":"y",
|
|
"103":"y",
|
|
"104":"y",
|
|
"105":"y",
|
|
"106":"y",
|
|
"107":"y",
|
|
"108":"y",
|
|
"109":"y",
|
|
"110":"y",
|
|
"111":"y",
|
|
"112":"y",
|
|
"113":"y",
|
|
"114":"y",
|
|
"115":"y",
|
|
"116":"y",
|
|
"117":"y",
|
|
"118":"y",
|
|
"119":"y",
|
|
"120":"y",
|
|
"121":"y",
|
|
"122":"y",
|
|
"123":"y",
|
|
"124":"y",
|
|
"125":"y",
|
|
"126":"y",
|
|
"127":"y",
|
|
"128":"y",
|
|
"129":"y",
|
|
"130":"y",
|
|
"131":"y",
|
|
"132":"y",
|
|
"133":"y",
|
|
"134":"y",
|
|
"135":"y",
|
|
"136":"y",
|
|
"137":"y",
|
|
"138":"y",
|
|
"139":"y",
|
|
"140":"y",
|
|
"141":"y",
|
|
"142":"y"
|
|
},
|
|
"firefox":{
|
|
"2":"n",
|
|
"3":"n",
|
|
"3.5":"n",
|
|
"3.6":"n",
|
|
"4":"n",
|
|
"5":"n",
|
|
"6":"n",
|
|
"7":"n",
|
|
"8":"n",
|
|
"9":"n",
|
|
"10":"n",
|
|
"11":"n",
|
|
"12":"n",
|
|
"13":"n",
|
|
"14":"n",
|
|
"15":"y",
|
|
"16":"y",
|
|
"17":"y",
|
|
"18":"y",
|
|
"19":"y",
|
|
"20":"y",
|
|
"21":"y",
|
|
"22":"y",
|
|
"23":"y",
|
|
"24":"y",
|
|
"25":"y",
|
|
"26":"y",
|
|
"27":"y",
|
|
"28":"y",
|
|
"29":"y",
|
|
"30":"y",
|
|
"31":"y",
|
|
"32":"y",
|
|
"33":"y",
|
|
"34":"y",
|
|
"35":"y",
|
|
"36":"y",
|
|
"37":"y",
|
|
"38":"y",
|
|
"39":"y",
|
|
"40":"y",
|
|
"41":"y",
|
|
"42":"y",
|
|
"43":"y",
|
|
"44":"y",
|
|
"45":"y",
|
|
"46":"y",
|
|
"47":"y",
|
|
"48":"y",
|
|
"49":"y",
|
|
"50":"y",
|
|
"51":"y",
|
|
"52":"y",
|
|
"53":"y",
|
|
"54":"y",
|
|
"55":"y #1",
|
|
"56":"y #1",
|
|
"57":"y #1",
|
|
"58":"y #2 #3",
|
|
"59":"y #2 #3",
|
|
"60":"y #2 #4",
|
|
"61":"y #2 #4",
|
|
"62":"y #2 #4",
|
|
"63":"y #2 #4",
|
|
"64":"y #2 #4",
|
|
"65":"y #2 #4",
|
|
"66":"y #2 #4",
|
|
"67":"y #2 #4",
|
|
"68":"y #2 #4",
|
|
"69":"y #2 #4",
|
|
"70":"y #2 #4",
|
|
"71":"y #2 #4",
|
|
"72":"y #2 #4",
|
|
"73":"y #2 #4",
|
|
"74":"y #2 #4",
|
|
"75":"y #2 #4",
|
|
"76":"y #2 #4",
|
|
"77":"y #2 #4",
|
|
"78":"y #2 #4",
|
|
"79":"y #2 #4",
|
|
"80":"y #2 #4",
|
|
"81":"y #2 #4",
|
|
"82":"y #2 #4",
|
|
"83":"y #2 #4",
|
|
"84":"y #2 #4",
|
|
"85":"y #2 #4",
|
|
"86":"y #2 #4",
|
|
"87":"y #2 #4",
|
|
"88":"y #2 #4",
|
|
"89":"y #2 #4",
|
|
"90":"y #2 #4",
|
|
"91":"y #2 #4",
|
|
"92":"y #2 #4",
|
|
"93":"y #2 #4",
|
|
"94":"y #2 #4",
|
|
"95":"y #2 #4",
|
|
"96":"y #2 #4",
|
|
"97":"y #2 #4",
|
|
"98":"y #2 #4",
|
|
"99":"y #2 #4",
|
|
"100":"y #2 #4",
|
|
"101":"y #2 #4",
|
|
"102":"y #2 #4",
|
|
"103":"y #2 #4",
|
|
"104":"y #2 #4",
|
|
"105":"y #2 #4",
|
|
"106":"y #2 #4",
|
|
"107":"y #2 #4",
|
|
"108":"y #2 #4",
|
|
"109":"y #2 #4",
|
|
"110":"y #2 #4",
|
|
"111":"y #2 #4",
|
|
"112":"y #2 #4",
|
|
"113":"y #2 #4",
|
|
"114":"y #2 #4",
|
|
"115":"y #2 #4",
|
|
"116":"y #2 #4",
|
|
"117":"y #2 #4",
|
|
"118":"y #2 #4",
|
|
"119":"y #2 #4",
|
|
"120":"y #2 #4",
|
|
"121":"y #2 #4",
|
|
"122":"y #2 #4",
|
|
"123":"y #2 #4",
|
|
"124":"y #2 #4",
|
|
"125":"y #2 #4",
|
|
"126":"y #2 #4",
|
|
"127":"y #2 #4",
|
|
"128":"y #2 #4",
|
|
"129":"y #2 #4",
|
|
"130":"y #2 #4",
|
|
"131":"y #2 #4",
|
|
"132":"y #2 #4",
|
|
"133":"y #2 #4",
|
|
"134":"y #2 #4",
|
|
"135":"y #2 #4",
|
|
"136":"y #2 #4",
|
|
"137":"y #2 #4",
|
|
"138":"y #2 #4",
|
|
"139":"y #2 #4",
|
|
"140":"y #2 #4",
|
|
"141":"y #2 #4",
|
|
"142":"y #2 #4",
|
|
"143":"y #2 #4",
|
|
"144":"y #2 #4",
|
|
"145":"y #2 #4",
|
|
"146":"y #2 #4",
|
|
"147":"y #2 #4",
|
|
"148":"y #2 #4"
|
|
},
|
|
"chrome":{
|
|
"4":"n",
|
|
"5":"n",
|
|
"6":"n",
|
|
"7":"n",
|
|
"8":"n",
|
|
"9":"n",
|
|
"10":"n",
|
|
"11":"n",
|
|
"12":"n",
|
|
"13":"n",
|
|
"14":"n",
|
|
"15":"n",
|
|
"16":"n",
|
|
"17":"n",
|
|
"18":"n",
|
|
"19":"n",
|
|
"20":"y x",
|
|
"21":"y x",
|
|
"22":"y x",
|
|
"23":"y x",
|
|
"24":"y",
|
|
"25":"y",
|
|
"26":"y",
|
|
"27":"y",
|
|
"28":"y",
|
|
"29":"y",
|
|
"30":"y",
|
|
"31":"y",
|
|
"32":"y",
|
|
"33":"y",
|
|
"34":"y",
|
|
"35":"y",
|
|
"36":"y",
|
|
"37":"y",
|
|
"38":"y",
|
|
"39":"y",
|
|
"40":"y",
|
|
"41":"y",
|
|
"42":"y",
|
|
"43":"y",
|
|
"44":"y",
|
|
"45":"y",
|
|
"46":"y",
|
|
"47":"y",
|
|
"48":"y",
|
|
"49":"y",
|
|
"50":"y",
|
|
"51":"y",
|
|
"52":"y",
|
|
"53":"y",
|
|
"54":"y",
|
|
"55":"y",
|
|
"56":"y",
|
|
"57":"y",
|
|
"58":"y",
|
|
"59":"y",
|
|
"60":"y",
|
|
"61":"y",
|
|
"62":"y",
|
|
"63":"y",
|
|
"64":"y",
|
|
"65":"y",
|
|
"66":"y",
|
|
"67":"y",
|
|
"68":"y",
|
|
"69":"y",
|
|
"70":"y",
|
|
"71":"y",
|
|
"72":"y",
|
|
"73":"y",
|
|
"74":"y",
|
|
"75":"y",
|
|
"76":"y",
|
|
"77":"y",
|
|
"78":"y",
|
|
"79":"y",
|
|
"80":"y",
|
|
"81":"y",
|
|
"83":"y",
|
|
"84":"y",
|
|
"85":"y",
|
|
"86":"y",
|
|
"87":"y",
|
|
"88":"y",
|
|
"89":"y",
|
|
"90":"y",
|
|
"91":"y",
|
|
"92":"y",
|
|
"93":"y",
|
|
"94":"y",
|
|
"95":"y",
|
|
"96":"y",
|
|
"97":"y",
|
|
"98":"y",
|
|
"99":"y",
|
|
"100":"y",
|
|
"101":"y",
|
|
"102":"y",
|
|
"103":"y",
|
|
"104":"y",
|
|
"105":"y",
|
|
"106":"y",
|
|
"107":"y",
|
|
"108":"y",
|
|
"109":"y",
|
|
"110":"y",
|
|
"111":"y",
|
|
"112":"y",
|
|
"113":"y",
|
|
"114":"y",
|
|
"115":"y",
|
|
"116":"y",
|
|
"117":"y",
|
|
"118":"y",
|
|
"119":"y",
|
|
"120":"y",
|
|
"121":"y",
|
|
"122":"y",
|
|
"123":"y",
|
|
"124":"y",
|
|
"125":"y",
|
|
"126":"y",
|
|
"127":"y",
|
|
"128":"y",
|
|
"129":"y",
|
|
"130":"y",
|
|
"131":"y",
|
|
"132":"y",
|
|
"133":"y",
|
|
"134":"y",
|
|
"135":"y",
|
|
"136":"y",
|
|
"137":"y",
|
|
"138":"y",
|
|
"139":"y",
|
|
"140":"y",
|
|
"141":"y",
|
|
"142":"y",
|
|
"143":"y",
|
|
"144":"y",
|
|
"145":"y",
|
|
"146":"y"
|
|
},
|
|
"safari":{
|
|
"3.1":"n",
|
|
"3.2":"n",
|
|
"4":"n",
|
|
"5":"n",
|
|
"5.1":"n",
|
|
"6":"n",
|
|
"6.1":"n",
|
|
"7":"n",
|
|
"7.1":"n",
|
|
"8":"y",
|
|
"9":"y",
|
|
"9.1":"y",
|
|
"10":"y",
|
|
"10.1":"y",
|
|
"11":"y",
|
|
"11.1":"y",
|
|
"12":"y",
|
|
"12.1":"y",
|
|
"13":"y",
|
|
"13.1":"y",
|
|
"14":"y",
|
|
"14.1":"y",
|
|
"15":"y",
|
|
"15.1":"y",
|
|
"15.2-15.3":"y",
|
|
"15.4":"y",
|
|
"15.5":"y",
|
|
"15.6":"y",
|
|
"16.0":"y",
|
|
"16.1":"y",
|
|
"16.2":"y",
|
|
"16.3":"y",
|
|
"16.4":"y",
|
|
"16.5":"y",
|
|
"16.6":"y",
|
|
"17.0":"y",
|
|
"17.1":"y",
|
|
"17.2":"y",
|
|
"17.3":"y",
|
|
"17.4":"y",
|
|
"17.5":"y",
|
|
"17.6":"y",
|
|
"18.0":"y",
|
|
"18.1":"y",
|
|
"18.2":"y",
|
|
"18.3":"y",
|
|
"18.4":"y",
|
|
"18.5-18.6":"y",
|
|
"26.0":"y",
|
|
"26.1":"y",
|
|
"26.2":"y",
|
|
"TP":"y"
|
|
},
|
|
"opera":{
|
|
"9":"n",
|
|
"9.5-9.6":"n",
|
|
"10.0-10.1":"n",
|
|
"10.5":"n",
|
|
"10.6":"n",
|
|
"11":"n",
|
|
"11.1":"n",
|
|
"11.5":"n",
|
|
"11.6":"n",
|
|
"12":"n",
|
|
"12.1":"n",
|
|
"15":"y",
|
|
"16":"y",
|
|
"17":"y",
|
|
"18":"y",
|
|
"19":"y",
|
|
"20":"y",
|
|
"21":"y",
|
|
"22":"y",
|
|
"23":"y",
|
|
"24":"y",
|
|
"25":"y",
|
|
"26":"y",
|
|
"27":"y",
|
|
"28":"y",
|
|
"29":"y",
|
|
"30":"y",
|
|
"31":"y",
|
|
"32":"y",
|
|
"33":"y",
|
|
"34":"y",
|
|
"35":"y",
|
|
"36":"y",
|
|
"37":"y",
|
|
"38":"y",
|
|
"39":"y",
|
|
"40":"y",
|
|
"41":"y",
|
|
"42":"y",
|
|
"43":"y",
|
|
"44":"y",
|
|
"45":"y",
|
|
"46":"y",
|
|
"47":"y",
|
|
"48":"y",
|
|
"49":"y",
|
|
"50":"y",
|
|
"51":"y",
|
|
"52":"y",
|
|
"53":"y",
|
|
"54":"y",
|
|
"55":"y",
|
|
"56":"y",
|
|
"57":"y",
|
|
"58":"y",
|
|
"60":"y",
|
|
"62":"y",
|
|
"63":"y",
|
|
"64":"y",
|
|
"65":"y",
|
|
"66":"y",
|
|
"67":"y",
|
|
"68":"y",
|
|
"69":"y",
|
|
"70":"y",
|
|
"71":"y",
|
|
"72":"y",
|
|
"73":"y",
|
|
"74":"y",
|
|
"75":"y",
|
|
"76":"y",
|
|
"77":"y",
|
|
"78":"y",
|
|
"79":"y",
|
|
"80":"y",
|
|
"81":"y",
|
|
"82":"y",
|
|
"83":"y",
|
|
"84":"y",
|
|
"85":"y",
|
|
"86":"y",
|
|
"87":"y",
|
|
"88":"y",
|
|
"89":"y",
|
|
"90":"y",
|
|
"91":"y",
|
|
"92":"y",
|
|
"93":"y",
|
|
"94":"y",
|
|
"95":"y",
|
|
"96":"y",
|
|
"97":"y",
|
|
"98":"y",
|
|
"99":"y",
|
|
"100":"y",
|
|
"101":"y",
|
|
"102":"y",
|
|
"103":"y",
|
|
"104":"y",
|
|
"105":"y",
|
|
"106":"y",
|
|
"107":"y",
|
|
"108":"y",
|
|
"109":"y",
|
|
"110":"y",
|
|
"111":"y",
|
|
"112":"y",
|
|
"113":"y",
|
|
"114":"y",
|
|
"115":"y",
|
|
"116":"y",
|
|
"117":"y",
|
|
"118":"y",
|
|
"119":"y",
|
|
"120":"y",
|
|
"121":"y",
|
|
"122":"y"
|
|
},
|
|
"ios_saf":{
|
|
"3.2":"n",
|
|
"4.0-4.1":"n",
|
|
"4.2-4.3":"n",
|
|
"5.0-5.1":"n",
|
|
"6.0-6.1":"n",
|
|
"7.0-7.1":"n",
|
|
"8":"y",
|
|
"8.1-8.4":"n",
|
|
"9.0-9.2":"y",
|
|
"9.3":"y",
|
|
"10.0-10.2":"y",
|
|
"10.3":"y",
|
|
"11.0-11.2":"y",
|
|
"11.3-11.4":"y",
|
|
"12.0-12.1":"y",
|
|
"12.2-12.5":"y",
|
|
"13.0-13.1":"y",
|
|
"13.2":"y",
|
|
"13.3":"y",
|
|
"13.4-13.7":"y",
|
|
"14.0-14.4":"y",
|
|
"14.5-14.8":"y",
|
|
"15.0-15.1":"y",
|
|
"15.2-15.3":"y",
|
|
"15.4":"y",
|
|
"15.5":"y",
|
|
"15.6-15.8":"y",
|
|
"16.0":"y",
|
|
"16.1":"y",
|
|
"16.2":"y",
|
|
"16.3":"y",
|
|
"16.4":"y",
|
|
"16.5":"y",
|
|
"16.6-16.7":"y",
|
|
"17.0":"y",
|
|
"17.1":"y",
|
|
"17.2":"y",
|
|
"17.3":"y",
|
|
"17.4":"y",
|
|
"17.5":"y",
|
|
"17.6-17.7":"y",
|
|
"18.0":"y",
|
|
"18.1":"y",
|
|
"18.2":"y",
|
|
"18.3":"y",
|
|
"18.4":"y",
|
|
"18.5-18.6":"y",
|
|
"26.0":"y",
|
|
"26.1":"y"
|
|
},
|
|
"op_mini":{
|
|
"all":"n"
|
|
},
|
|
"android":{
|
|
"2.1":"n",
|
|
"2.2":"n",
|
|
"2.3":"n",
|
|
"3":"n",
|
|
"4":"n",
|
|
"4.1":"n",
|
|
"4.2-4.3":"n",
|
|
"4.4":"y",
|
|
"4.4.3-4.4.4":"y",
|
|
"142":"y"
|
|
},
|
|
"bb":{
|
|
"7":"n",
|
|
"10":"y"
|
|
},
|
|
"op_mob":{
|
|
"10":"n",
|
|
"11":"n",
|
|
"11.1":"n",
|
|
"11.5":"n",
|
|
"12":"n",
|
|
"12.1":"n",
|
|
"80":"y"
|
|
},
|
|
"and_chr":{
|
|
"142":"y"
|
|
},
|
|
"and_ff":{
|
|
"144":"y"
|
|
},
|
|
"ie_mob":{
|
|
"10":"y",
|
|
"11":"y"
|
|
},
|
|
"and_uc":{
|
|
"15.5":"y"
|
|
},
|
|
"samsung":{
|
|
"4":"y",
|
|
"5.0-5.4":"y",
|
|
"6.2-6.4":"y",
|
|
"7.2-7.4":"y",
|
|
"8.2":"y",
|
|
"9.2":"y",
|
|
"10.1":"y",
|
|
"11.1-11.2":"y",
|
|
"12.0":"y",
|
|
"13.0":"y",
|
|
"14.0":"y",
|
|
"15.0":"y",
|
|
"16.0":"y",
|
|
"17.0":"y",
|
|
"18.0":"y",
|
|
"19.0":"y",
|
|
"20":"y",
|
|
"21":"y",
|
|
"22":"y",
|
|
"23":"y",
|
|
"24":"y",
|
|
"25":"y",
|
|
"26":"y",
|
|
"27":"y",
|
|
"28":"y",
|
|
"29":"y"
|
|
},
|
|
"and_qq":{
|
|
"14.9":"y"
|
|
},
|
|
"baidu":{
|
|
"13.52":"y"
|
|
},
|
|
"kaios":{
|
|
"2.5":"y",
|
|
"3.0-3.1":"y"
|
|
}
|
|
},
|
|
"notes":"The timestamp is not actually high-resolution. To mitigate security threats such as Spectre, browsers currently round the result to varying degrees.",
|
|
"notes_by_num":{
|
|
"1":"In Firefox 55-57, the `privacy.resistFingerprinting` preference can be enabled to change the precision to 100ms.",
|
|
"2":"In Firefox, the `privacy.resistFingerprinting` preference can be enabled to change the precision to 100ms or the value of `privacy.resistFingerprinting.reduceTimerPrecision.microseconds`, whichever is larger.",
|
|
"3":"In Firefox 58-59, the `privacy.reduceTimerPrecision` preference is enabled by default and defaults to 20us.",
|
|
"4":"In Firefox, the `privacy.reduceTimerPrecision` preference is enabled by default and defaults to 2ms."
|
|
},
|
|
"usage_perc_y":95.16,
|
|
"usage_perc_a":0,
|
|
"ucprefix":false,
|
|
"parent":"",
|
|
"keywords":"performance,now,testing",
|
|
"chrome_id":"5349124069130240",
|
|
"shown":true
|
|
}
|