You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Performance,可以获取到当前页面中与性能相关的信息。它是 High Resolution Time API 的一部分,同时也融合了 Performance Timeline API、Navigation Timing API、 User Timing API 和 Resource Timing API。
介绍
Web API 是浏览器(也叫用户代理)需要提供给开发者的一套API。
分类
MDN维护了一份 API 参考列表。
但是没有对它们分类,我简单对一些常用的API进行了分类。
1. DOM 相关
除了之前提到过的:EventTarget、Node、Document、Element、Window。
还有下面的:
2. 浏览器相关
3. 系统相关
4. 网络请求
4.1 Fetch
Fetch 的核心在于对 HTTP 接口的抽象,包括 Request,Response,Headers,Body,以及用于初始化异步请求的 global fetch。Fetch 还利用到了请求的异步特性——它是基于 Promise 的。
使用方式:
相关接口
4.2 XMLHttpRequest
实例属性
readyState:
onreadystatechange:只要 readyState 属性发生变化,就会调用相应的处理函数。
timeout:默认值为 0,意味着没有超时。
status:http响应数字状态码。
statusText:stateState为3、4时,赋值为"OK"
response:返回响应的正文。可以是 ArrayBuffer, Blob, Document, JavaScript对象 或 一个 DOMString 类型
responseType:default:DOMString;"arraybuffer":ArrayBuffer;"blob":Blob;"document":Document;"text":“DOMString”
responseURL:当URL被返回的时候,任何包含在URL # 后面的fragment都会被删除。
upload:返回一个 XMLHttpRequestUpload对象,表示上传的进度。
withCredentials:一个Boolean类型,它指示了是否该使用类似cookies,authorization headers(头部授权)或者TLS客户端证书这一类资格证书来创建一个跨站点访问控制(cross-site Access-Control)请求。
实例方法
open(method, url, async, user, password):初始化一个请求。
send([data]):用于发送 HTTP 请求。
abort():终止该请求。readyState 属性将被置为0( UNSENT )。
getAllResponseHeaders():返回所有的响应头.
getResponseHeader():返回包含指定头文本的字符串。
setRequestHeader():设置HTTP请求头部的方法。此方法必须在 open() 方法和 send() 之间调用。
5. 多线程
6. 通信
URL.createObjectURL():返回一个DOMString ,包含一个唯一的blob链接
。7. 数据结构
8. 安全
9. 优化
requestAnimationFrame,告诉浏览器您希望执行动画并请求浏览器在下一次重绘之前调用指定的函数来更新动画。该方法使用一个回调函数作为参数,这个回调函数会在浏览器重绘之前调用。
DocumentFragment,表示一个没有父级文件的最小文档对象。它被当做一个轻量版的 Document 使用,用于存储已排好版的或尚未打理好格式的XML片段。最大的区别是因为DocumentFragment不是真实DOM树的一部分,它的变化不会引起DOM树的重新渲染的操作(reflow) ,且不会导致性能等问题。
requestIdleCallback,会在浏览器空闲时期依次调用函数, 这就可以让开发者在主事件循环中执行后台或低优先级的任务,而且不会对像动画和用户交互这样延迟触发而且关键的事件产生影响。函数一般会按先进先调用的顺序执行,除非函数在浏览器调用它之前就到了它的超时时间。
Performance,可以获取到当前页面中与性能相关的信息。它是 High Resolution Time API 的一部分,同时也融合了 Performance Timeline API、Navigation Timing API、 User Timing API 和 Resource Timing API。
9.1 window.requestAnimationFrame
细节:
API:
9.2 window.requestIdleCallback
9.3 window.performance
参考
Web API接口
使用 Fetch
分时函数/requestAnimationFrame优化页面数据渲染
The text was updated successfully, but these errors were encountered: