18ajaxfetchaxios区别

Posted 天界程序员

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了18ajaxfetchaxios区别相关的知识,希望对你有一定的参考价值。

三者都是用于网络请求,但是不同维度

  • Ajax(Asynchronous javascript and XML)一种技术统称
  • Fetch,一个具体的API
  • Axios,第三方库

使用XMLHttpRequest实现ajax

function ajax(url,successFn)
    const xhr = new XMLHttpRequest()
    xhr.open("GET",url,false)
    xhr.onreadystatechange = function () 
        // 这里的函数异步执行,可参考之前JS基础中的异步模块
        if(xhr.readyState == 4) 
            if(xhr.status == 200) 
                successFn(xhr.responseText)
            
        
    
    xhr.send(null)

Fetch

  • 浏览器原生API,用于网络请求
  • 和XMLHttpRequest一个级别
  • Fetch语法更加简洁、易用,支持Promise

Axios

  • 最常用的网络请求lib(随着Vue火起来)
  • 内部可用XMLHttpRequest和Fetch来实现
  • Axios,第三方库axios-http.com

总结

  • Ajax,一种技术统称
  • Fetch,一个原生API
  • Axios,一个第三方库
  • lib和API的区别
  • 实际项目中,使用现成的lib,尽量不要用自己的轮子
  • 但是读源码、造轮子是很好的个人学习方式

以上是关于18ajaxfetchaxios区别的主要内容,如果未能解决你的问题,请参考以下文章

前端中的attr和prop的区别

wiki,wikipedia与mediawiki三者的区别

Java中的堆和栈以及堆栈的区别

DQLDMLDDLDCL的概念与区别

buffer 和 cache 的区别

IaaS,PaaS,SaaS 的区别