前端学习(二十八)es6&ajax(笔记)
ES6
let
块级作用域
const
解构赋值
字符串拼接
扩展运算符
-----------------------------------------------------------
箭头函数
function show(a){
return a;
}
↓
show=a=>a;
function show(a,b){
return a+b;
}
↓
show=(a,b)=>a+b;
function show(a,b){
alert(a+b);
}
↓
show=(a,b)=>{
alert(a+b);
}
function show(){
alert(12);
}
↓
show=()=>{
alert(12);
}
function(){
}
↓
()=>{
}
function(a,b){
}
↓
(a,b)=>{
}
------------------------------------------------------------
Map
var map = new Map() 对象
设置
map.set(key,value);
获取
map.get(key);
删除
map.delete(key);
清空
map.clear()
循环
for...of...
for(let [key,value] of map){
}
----------------------------------------------------
数组扩展方法
Array.from();
把类数组变成真正的数组
var arr = Array.from(类数组);
类数组
长得像数组,一样要用for循环遍历。
但是不能使用数组的方法
获取一组元素
arguments
------------------------------------------------------
交互
$.ajax({
url:'',
data:{
t:Math.random()
}
}).then((res)=>{
//成功
},(err)=>{
//失败
});
----------------------------------------------------
需要后台给你接口
get.php?a=xxx&b=xxx
return
number
post.php?a=xxx&b=xxx
return
number
$.ajax({
url:地址,
type:类型,
data:{}
});
========================================================
ajax原理
1.创建一个ajax对象
var oAjax = new XMLHttpRequest();
不兼容IE6
var oAjax = new ActiveXObject('Microsoft.XMLHTTP');
兼容IE6,7,8
兼容写法
if(window.XMLHttpRequest){
var oAjax = new XMLHttpRequest();
}else{
var oAjax = new ActiveXObject('Microsoft.XMLHTTP');
}
GET
2.打开连接
oAjax.open('GET',url?data,true);
生活 程序
同步 同时做多件事情 一次只能做一件事
异步 一次只能做一件事 同时进行多件事情
3.发送请求
oAjax.send();
POST
2.打开连接
oAjax.open('POST',url,true);
设置请求头部
oAjax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
3.发送请求
oAjax.send(data);
4.接收响应
oAjax.onreadystatechange = function(){
//判断ajax状态
if(oAjax.readyState==4){
//判断http状态码
if(oAjax.status>=200&&oAjax.status<300||oAjax.status==304){
成功
响应结果
oAjax.responseText
}else{
失败
}
}
}
ajax状态
0 准备成功未发送
1 发送成功
2 接收原始数据成功
3 解析原始数据成功
4 完成
ajax的核心是什么?
XMLHttpRequest
前端学习(二十八)es6&ajax(笔记)的更多相关文章
- Java开发学习(二十八)----拦截器(Interceptor)详细解析
一.拦截器概念 讲解拦截器的概念之前,我们先看一张图: (1)浏览器发送一个请求会先到Tomcat的web服务器 (2)Tomcat服务器接收到请求以后,会去判断请求的是静态资源还是动态资源 (3)如 ...
- 前端学习(三十八)vue(笔记)
Angular+Vue+React Vue性能最好,Vue最轻=======================================================Angular ...
- 前端学习(三十)es6的一些问题(笔记)
赋值表达式 document.onclick = document.onmouseover = fn; var a = b = c = d = 5; 不推荐 逗号表 ...
- 前端学习(二十九)nodejs(笔记)
后台语言 java php .Net python Node.js------------------------------------------------- ...
- 前端学习(二十六)移动端s(笔记)
===================================================弹性布局rem布局---------------------------------------- ...
- 前端学习(二十二)css3(笔记)
html5 普通: header section footer nav article aside figure 特殊: canvas video audio ...
- 前端学习(二十)jquery属性(笔记)
jq里面操作属性的方法: 设置属性: 设置一个: $(this).attr('src','img/pic2.jpg'); 设置一组: ...
- Python学习二十八周(vue.js)
一.指令 1.一个例子简单实用vue: 下载vue.js(这里实用1.0.21版本) 编写html代码: <!DOCTYPE html> <html lang="en&qu ...
- JavaWeb学习 (二十八)————文件上传和下载
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用 ...
随机推荐
- robotframework的if else
- NIO摘录
NIO,一种基于通道和缓冲区的I/O方式,可以使用native函数库直接分配堆外内存,然后通过一个存储在java 堆的DirectBteBuffer对象作为这块内存的引用进行操作,避免了再java堆和 ...
- center os 下redis安装以及基本使用
解压并进入其目录 make cd src make install 默认情况,Redis不是在后台运行,我们需要把redis放在后台运行 vim /usr/local/redis/etc/redis. ...
- oracle多表连接方式Hash Join Nested Loop Join Merge Join
在查看sql执行计划时,我们会发现表的连接方式有多种,本文对表的连接方式进行介绍以便更好看懂执行计划和理解sql执行原理. 一.连接方式: 嵌套循环(Nested Loops (NL) ...
- Spring Transaction Propagation
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11530611.html REQUIRED behavior Spring REQUIRED behav ...
- 如何在某个apps包下面中创建APP
- spark streaming简单示例
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://mave ...
- scipy与sklearn下载与安装
一.scipy下载与安装 scipy下载地址:http://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv提供各种包whl文件 下载之后放到Scripts文件中 ...
- window 2008/2012计划任务配置
很多人在问我: 1.Windows Server 2008 计划任务在哪里配置? 2.Windows Server 2008 可以配置每分钟或是每小时执行我的任务吗? 答案是:可以! 首先Window ...
- jumpserver安装和使用
jumpserver安装 #centos6 centos7都可用yum -y install git python-pip mysql-devel gcc automake autoconf pyth ...