PerformanceResourceTiming:contentType 属性
contentType
是 PerformanceResourceTiming
接口的一个只读属性,它是一个字符串,指示获取的资源的内容类型,格式为 MIME 类型 和子类型,由斜杠分隔。
内容类型是从资源获取响应中发送的 Content-Type
HTTP 标头中提取的 MIME 类型的最小化和“标准化”版本。对于 JavaScript、JSON、SVG 和 XML,MIME 类型将替换为代表性的 MIME 类型/子类型字符串。浏览器支持的其他类型由标头中的 MIME 类型/子类型字符串表示(标头中的其他信息将被丢弃)。
值
一个指示内容的 MIME 类型“本质”的字符串。它可能是以下值之一
text/javascript
-
JavaScript 内容。
application/json
-
JSON 内容。
image/svg+xml
-
SVG 内容。
application/xml
-
XML 内容(除 SVG 外)。
- MIME 类型/子类型
-
用户代理支持的任何其他 MIME 类型/子类型。
""
(空字符串)-
对于浏览器不支持的 MIME 类型,或者如果资源获取由于 CORS 检查而失败,则返回此值。
示例
筛选资源
contentType
属性可用于仅获取特定的资源计时条目;例如,仅获取与脚本相关的条目。
以下示例使用 PerformanceObserver
在浏览器性能时间轴中记录新的 resource
性能条目时发出通知。buffered
选项用于访问观察器创建之前的条目。
js
const observer = new PerformanceObserver((list) => {
const javascriptResources = list.getEntries().filter((entry) => {
return entry.contentType === "text/javascript";
});
console.log(javascriptResources);
});
observer.observe({ type: "resource", buffered: true });
以下示例使用 Performance.getEntriesByType()
,它仅显示在您调用该方法时浏览器性能时间轴中存在的 resource
性能条目。
js
const scripts = performance.getEntriesByType("resource").filter((entry) => {
return entry.contentType === "text/javascript";
});
console.log(scripts);
规范
规范 |
---|
资源计时 # dom-performanceresourcetiming-contenttype |
浏览器兼容性
BCD 表仅在启用 JavaScript 的浏览器中加载。