PerformanceResourceTiming

PerformanceResourceTiming - дозволяє пошук та аналізу щодо завантаження ресурсів веб-сторінки.

Опис:

PerformanceResourceTiming об'єкт містить властивості з часом виконання подій в поточному документі щодо завантаження ресурсів (зображення, CSS, JavaScript і т.д.) для веб-сторінки.

Приклад:

var ob=performance.getEntriesByType('resource'); alert(ob[0]); var prt=performance.getEntriesByType('resource'); var s=''; for(var i=0; i<prt.length;i++){ s+='\n\n'+i+'\n'; s+=' name: '+prt[i].name+'\n'; s+=' entryType: '+prt[i].entryType+'\n'; s+=' startTime: '+prt[i].startTime+'\n'; s+=' duration: '+prt[i].duration+'\n'; s+=' initiatorType: '+prt[i].initiatorType+'\n'; s+=' nextHopProtocol: '+prt[i].nextHopProtocol+'\n'; s+=' workerStart: '+prt[i].workerStart+'\n'; s+=' redirectStart: '+prt[i].redirectStart+'\n'; s+=' redirectEnd: '+prt[i].redirectEnd; s+=' fetchStart: '+prt[i].fetchStart; s+=' domainLookupStart: '+prt[i].domainLookupStart; s+=' domainLookupEnd: '+prt[i].domainLookupEnd; s+=' secureConnectionStart: '+prt[i].secureConnectionStart; s+=' requestStart: '+prt[i].requestStart; s+=' responseStart: '+prt[i].responseStart; s+=' responseEnd: '+prt[i].responseEnd; s+=' transferSize: '+prt[i].transferSize; s+=' encodedBodySize: '+prt[i].encodedBodySize; s+=' decodedBodySize: '+prt[i].decodedBodySize; s+=' serverTiming: '+prt[i].serverTiming; } document.getElementById('result').innerHTML=s; Приклад отримання продуктивності щодо завантаження зображення: performance.clearResourceTimings(); //очищаємо буфер продуктивності var img=document.createElement('img'); img.src='/dani/test.png'; img.onload=function(){ var mas=performance.getEntriesByType('resource'); //отримуємо масив ресурсів //зображення є першим в масиві так як буфер був попередньо очищений alert('url: '+mas[0].name+', час завантаження:'+mas[0].duration+' мс'); } Визначення ресурсу який завантажився найшвидше: var resources=performance.getEntriesByType('resource'), max=0; for(var i=0;i<resources.length;i++){ if(resources[i].duration<resources[max].duration) max=i; } alert('Найшвидше завантажився ресурс: "'+resources[max].name+'", тривалість завантаження: '+resources[max].duration+' мс');