探究 JavaScript 前端热点面试题(三):让你在面试中游刃有余! |
您所在的位置:网站首页 › 华为java面试题 › 探究 JavaScript 前端热点面试题(三):让你在面试中游刃有余! |
ajax: 一个 JavaScript 技术,内部基于 XHRHttpRequest 来实现 axios: 一个请求框架,也是基于 XHRHttpRequest 封装和 promise 对象,支持同步和异步,提供了较多方法 fetch: 一个原生请求 API,基于 Promise 来实现 ajax 没有自动转换数据类型的机制,而 axios 和 fetch 支持自动将返回的数据转换为 JSON 数据格式或其他类型 ajax: 一种创建交互式网页的开发技术,可做到无需重新加载整个网页的情况下,更新部分网页,也叫局部更新。 缺点: 原生支持 XHR,但 XHR 架构不清晰不符合分离原则配置和调用费用混乱,基于事件的异步模型处理不友好axios: 一个基于 promise 的 HTTP 库,可用在浏览器和 node.js 中。 特点: 浏览器端发起 XMLHttpRequests 请求node 端发起 http 请求支持 promise API监听请求和返回取消请求自动转换 json 数据客户端抵御 XSRF 攻击fetch: 不是基于 ajax 的封装,而是原生 js, 没有使用 XMLHttpRequests 对象 优点: 语法简洁,更加语义化基于 promise 实现,支持 async/await更加底层,API 丰富脱离 XMLHttpRequest 缺点: 只对网络请求报错,对 400,500 都当做成功的请求,不会进行 reject 处理,只有网络错误导致请求错误,才会被 reject。默认不携带 cookie, 不支持超时控制,使用 setTimeout 及 Promise.reject 的实现的超时控制并不能阻止请求过程继续在后台运行,造成了流量的浪费没有办法检测请求的进度,而 XHR 可以。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |