1、声明变量的两种方式
在es6之前所使用的var 因为有变量提升 不适合大型项目
es6中的 let 和 const
let 不具备变量提升 只在该声明的同一层 和该层后 使用
const 定义常量 不具备变量提升 如果声明的对象 可以改变 该对象里的属性值
2、箭头函数
es6之前 声明一个方法
function a () {
这种方法闭包 this指向 window
}
箭头函数
let a = () => {
不属于闭包 this 指向 上一层
}
3、展开运算符
... 运算符
let a = [a, b, c, d]
let b = [e, f, g]
合并ab
let ab = [...a, ...b]
json 数据 同理
4、sort 排序
let a = [1, 2, 3, 4]
let b = a.sort( (e, r) => {
return e - r 表示升序
return r - e 表示降序
})
let c = [{a: 6},
{a: 2},
{a: 1},
{a: 9}]
let d = c.sort( (e, r) => {
return e.a - r.a 表示升序
return r.a - e.a 表示降序
})
5、promise 请求
异步发送多个请求
let api = [axios.post(url, post, data), axios.post(url, post, data)]
axios.all(api).then(
axios.spread((请求1返回结果, 请求2返回结果) => {
})
).catch( error => {
})
由于 axios 封装了 ajax 和 promise 可以这样使用来同时发送多个请求
只有请求全部返回结果时,才会显示 结果 如果中途有一个 请求失败 就会走到 catch
promise 同理