XML、XMLDOM、XMLHttpRequest 详解(二),分析Web前端未来几年的发展前景

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

function createXHR() {

if (typeof XMLHttpRequest != ‘undefined’) {

return new XMLHttpRequest();

} else if (typeof ActiveXObject != ‘undefined’) {

var versions = [

‘MSXML2.XMLHttp.6.0’,

‘MSXML2.XMLHttp.3.0’,

‘MSXML2.XMLHttp’

];

for (var i = 0; i < versions.length; i ++) {

try {

return new ActiveXObject(version[i]);

} catch (e) {

//跳过

}

}

} else {

throw new Error(‘您的浏览器不支持XHR对象!’);

}

}

var xhr = new createXHR();

XHR 使用

======

在使用 XHR 对象时,先必须调用 open() 方法,它接受三个参数,要发送的请求类型(get、post)、请求的URL和表示是否异步。

// 使用同步方式(false代表同步)

var xhr = new XMLHttpRequest();

alet(xhr); //XMLHttpRequest

xhr.open(‘get’,‘demo.php’,false); //准备发送请求,以get方式请求

xhr.send(null);

open() 方法并不会真正发送请求,而只是启动一个请求以备发送。通过 send() 方法进行发送请求,send() 方法接受一个参数,作为请求主体发送的数据。如果不需要则,必须填 null。

执行 send() 发送之后,请求就会发送到服务器上。

当请求发送到服务器端,收到响应后,响应的数据会自动填充XHR对象的属性。XHR一共有四个属性:

| 属性 | 描述 |

| — | — |

| responseText | 作为响应主体被返回的文本 |

| responeXML | 如果响应主题内容类型是”text/xml”或”application/xml”,则返回包含 响应数据的XMLDOM文档 |

| status | 响应的HTTP状态 |

| statusText | HTTP状态的说明 |

接收响应之后,第一步检查 status 属性,以确定响应已经成功返回。一般而以 HTTP 状态代码为 200 作为成功的标志。除了成功的状态代码,还有一些别的:

| HTTP状态码 | 状态字符串 | 说明 |

| — | — | — |

| 200 | OK | 服务器成功返回了页面 |

| 400 | Bad Request | 语法错误导致服务器不识别 |

| 401 | Unauthorized | 请求需要用户认证 |

| 404 | Not found | 指定的URL在服务器上找不到 |

| 500 | Internal Server Error | 服务器遇到意外错误,无法完成请求 |

| 505 | ServiceUnavailable | 由于服务器过载或维护导致无法完成请求 |

alert(xhr.responseText); // 打印服务器端返回回来的数据

使用异步调用才是我们真正常用的手段,使用异步调用的时候,需要出发readystatechange 事件,然后检测 readyState 属性即可。

//使用异步方式

var xhr = new XMLHttpRequest();

xhr.open(‘get’, ‘demo.php?rand=’ + Math.random(), true); //准备发送请求,以get方式请求

xhr.send(null);

xhr.onreadystatechange = function(){

if(xhr.readyState === 4 && xhr.status === 200){

alert(xhr.responseText);

}else{

alert(‘数据返回失败!状态代码:’ + xhr.status + ‘状态信息:’ + xhr.statusText);

}

}

文末

从转行到现在,差不多两年的时间,虽不能和大佬相比,但也是学了很多东西。我个人在学习的过程中,习惯简单做做笔记,方便自己复习的时候能够快速理解,现在将自己的笔记分享出来,和大家共同学习。

个人将这段时间所学的知识,分为三个阶段:

第一阶段:HTML&CSS&JavaScript基础

第二阶段:移动端开发技术

第三阶段:前端常用框架

  • 推荐学习方式:针对某个知识点,可以先简单过一下我的笔记,如果理解,那是最好,可以帮助快速解决问题;

  • 大厂的面试难在,针对一个基础知识点,比如JS的事件循环机制,不会上来就问概念,而是换个角度,从题目入手,看你是否真正掌握。所以对于概念的理解真的很重要。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
深入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-Y6nSduUz-1713205394289)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值