title: 学习Ajax，关于XMLHttpRequest对象是怎么从后台和服务器交换数据的不太理解？
desc: 客户端在提交表单之后，异步是说线程不阻塞，那么客户端是怎么知道readyState4和stutas200的呢，是服务器每更改一次readyState的值就向客户端更新一次信息吗？还是说和什么回调函数有关系，它们到底是怎么交互的呢？不懂，求解惑。谢谢
topic: 前端开发
content: 谢邀。其实再多的解释还不如你自己假装写一个 XMLHttpRequest 来得实在。（注意，不是用 XMLHttpRequest ，而是写一个 XMLHttpRequest）。class FakeXMLHttpRequest constructor this.readyState 0 setReadyState state this.readyState state if this.onreadytatechange this.onreadytatechange open this.setReadyState1 send this.setReadyState2 sending s
answerer_tags: React.js 小书: http://react.huziketang.com