怎样封装一个原生的Ajax,原生javascript封装ajax

最近重新看《javascript高级程序设计》,突然看到了ajax,想起来之前学习的各种坑,又想着结合最近学习的模块化编程、面向对象式编程,所以用原生的js采用面向对象的设计思路对ajax进行了一个封装,同时,想起之前学习ajax的最大困难:没有服务器端代码,不好测试,所以这次用原生node写了一个简单的服务器,用于处理ajax的测试。

综上,本文主要提供了以下几个点:采用面向对象的方法用原生js封装了一个ajax类,更便捷的实现ajax通信

提供了一个Node写的服务器端的代码,可以用来测试ajax

提供了一个demo,服务器端以及浏览器端的代码来测试ajax类

仓库在这里,服务器,客户端的代码都在里面,也有一些测试的说明。

ajax实现原理

ajax是一项伟大的技术,其很好的解决了传统浏览器一言不合就重新发送整个页面,速度慢,用户体验差的问题。它是一个获取资源的手段,可以在不进行整体刷新的情况下进行局部dom修改,速度快,用户体验好。实现的原理主要是基于一个类,XMLHttpRequest(IE7以下不支持,提供了另外的类进行实现,不在本文讨论范围中,都2017年了。。)。

大概的原理分成下面几步:新建XMLHttpRequest对象,var xhr = new XMLHttpRequest().

通信需要有一个回调函数,就是接收到对方的回信之后需要有一个处理的函数,这个函数可以通过xhr.onreadystatechange = callback;来进行回调。对方的回信存储在xhr.respon

你可能感兴趣的:(怎样封装一个原生的Ajax)