PerformanceEntry.duration - Web APIs 编辑
The duration
property returns a timestamp
that is the duration of the performance entry
.
Note:
This feature is available in Web Workers.The value returned by this property depends on the performance entry's type
:
- "
frame
" - returns atimestamp
indicating the difference between thestartTime
s of two successive frames. - "
mark
" - returns "0
" (a mark has no duration). - "
measure
" - returns thetimestamp
that is the duration of the measure. - "
navigation
" - returns thetimestamp
that is the difference between thePerformanceNavigationTiming.loadEventEnd
andPerformanceEntry.startTime
properties, respectively. - "
resource
" - returns the difference between the resource'sresponseEnd
timestamp
and itsstartTime
timestamp
.
This property is Read only .
Syntax
entry.duration;
Return value
A DOMHighResTimeStamp
representing the duration of the performance entry
. If the duration concept doesn't apply for a particular performance metric, the browser may choose to return a duration of 0.
Note: if the performance entry has an entryType
of "resource
" (i.e. the entry is a PerformanceResourceTiming
object), this property returns the difference between the PerformanceEntry.responseEnd
and PerformanceEntry.startTime
timestamps
.
Example
The following example shows the use of the duration
property.
function run_PerformanceEntry() {
log("PerformanceEntry support ...");
if (performance.mark === undefined) {
log("... performance.mark Not supported");
return;
}
// Create some performance entries via the mark() method
performance.mark("Begin");
do_work(50000);
performance.mark("End");
// Use getEntries() to iterate through the each entry
var p = performance.getEntries();
for (var i=0; i < p.length; i++) {
log("Entry[" + i + "]");
check_PerformanceEntry(p[i]);
}
}
function check_PerformanceEntry(obj) {
var properties = ["name", "entryType", "startTime", "duration"];
var methods = ["toJSON"];
for (var i=0; i < properties.length; i++) {
// check each property
var supported = properties[i] in obj;
if (supported)
log("..." + properties[i] + " = " + obj[properties[i]]);
else
log("..." + properties[i] + " = Not supported");
}
for (var i=0; i < methods.length; i++) {
// check each method
var supported = typeof obj[methods[i]] == "function";
if (supported) {
var js = obj[methods[i]]();
log("..." + methods[i] + "() = " + JSON.stringify(js));
} else {
log("..." + methods[i] + " = Not supported");
}
}
}
Specifications
Specification | Status | Comment |
---|---|---|
Performance Timeline Level 2 The definition of 'duration' in that specification. | Candidate Recommendation | |
Performance Timeline The definition of 'duration' in that specification. | Recommendation | Initial definition. |
Browser compatibility
BCD tables only load in the browser
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论