JavaScript之AJAX基础

}

}

return new ActiveXObject(arguments.callee.activeXString);

}else{

throw new Error(“No XHR object available”);

}

}

2.1 XHR用法


1 调用open()方法

xhr.open(“get”,”example.jsp”,false);

注意:1 URL是相对于当前页面(也可使用绝对路径)

2 该方法并不会真发送请求,只是启动一个请求准备发送

2 调用send()方法

xhr.seng(null);

注意:该方法接受一个参数,即要作为请求主体发送的数据,若不需要通过请求主体发  送数据,则必须传入null。

3 检查响应状态

if ((xhr.status>=200&&xhr.status<300)||xhr.status==304) {//不写200是为了兼容

alert(xhr.statusText);

}else{

alert(“Request was unsuccessful:”+xhr.status);

}

false 是指请求同步,即JS代码会等到服务器响应后再继续执行。收到响应后,响应的 数据会自动填充XHR对象的属性,相关属性有:

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

responseXML:若响应的内容类型是“text/xml”或“application/xml”,则这个属性中 将保存包含着响应数据的XML DOM文档;

status:响应的HTTP状态;

statusText:HTTP状态的说明

HTTP状态代码是200时表示响应成功,304表示请求资源没有改变,即可以用浏览器 中缓存的版本。

2.2 HTTP头部信息

XHR对象提供了操作两种头部(请求和响应)信息的方法

1 设置请求响应头部setRequestHeader(“头部字段名称”,“头部字段值”);注意该方法 必须在open之后,send之前调用;

2 取得响应头部信息getResponseHeader(“头部字段名称”);也可用方法getAllResponseHeaders()返回包含所有头部信息的长字符串,一个头部字段占一行


2.3 Get请求

如要向url中添加查询字符串参数,那么该字符串必须经过正确的编码(encodeURIComponent)才行,否则会出现查询字符串格式问题。

function addURIComponent (url,name,value) {

url+=(url.indexOf(“?”)==-1?“?”:“&”);

url+=encodeURIComponent(name)+“=”+encodeURIComponent(value);

return url;

}


2.4 POST请求


当使用post方式提交请求时,send方法的参数为要传入给服务器的数据

xhr.open(“post”,”example.jsp”,true);

xhr.setRequestHeader(“Content-Type”,”application/x-www-form-urlencodede”);

var form=document.getElementById(“user-info”);

xhr.send(serialize(form));

3 JSON

======

3.1 JSON表示对象和数组的语法


对象{

“name”:”wang”,

“age”:20

}

对象中必须给属性加双引号,这也是跟JS不同的地方

数组[1,2,”color”]

数组中的值可以是字符串,数值,布尔值,null,对象或其他数组

若是自己编写代码对JSON求值,最好将输入的文本放在一对圆括号中,如:

Var object=eval(“(”+jsontext+”)”);

3.2  在AJAX中使用JSON


3.2.1 从服务器读取数据

Crockford发明了JSON并维护着一个JSON库。在库中有一个全局JSON对象,该对象的方法parse()接受两个参数:JSON文本和一个可选的过滤函数,当JSON文本有效时,该函数返回传入数据的一个对象表示。

var jsontext=“{\“name\”:\“wang\”,\“age\”:\“21\”}”;

var object=JSON.parse(jsontext,function (key,value) {

switch (key){

case “age”: return value+1;

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

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

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

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

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注前端)
img

前端框架

前端框架太多了,真的学不动了,别慌,其实对于前端的三大马车,Angular、React、Vue 只要把其中一种框架学明白,底层原理实现,其他两个学起来不会很吃力,这也取决于你以后就职的公司要求你会哪一个框架了,当然,会的越多越好,但是往往每个人的时间是有限的,对于自学的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。

以 Vue 为例,我整理了如下的面试题。

Vue部分截图

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

的学生,或者即将面试找工作的人,当然要选择一门框架深挖原理。

以 Vue 为例,我整理了如下的面试题。

Vue部分截图

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值