一、变量
var :
1、可以重复声明 2、无法限制修改 3、没有块级作用域
let:
不能重复声明,变量可以修改,块级作用域
const:
不能重复声明,常量不可以修改,块级作用域
二、函数(箭头函数)
()=>{} == function(){
1、如果只有一个参数“()”可以省
2、如果只有一个return,“{return}”可以省
3、修正this,this指向相对正常
三、函数的参数
1、参数的扩展、数组的展开(...)
参数扩展:function show(a,b,...arr){} //收集参数 Rest Parameter必需为最后一个
数组展开:let arr=[1,2,3];
let arr1=[...arr,...arr] //[1,2,3,1,2,3]
2、默认参数
function show(a,b=2,c=5){}
四、解构赋值
let [a,b,c]=[1,2,3]
1、左右两边结构一样
2、右边是一个合法的东西
3、声明与赋值需要一次完成
五、JSON
1、JSON.stringify / JSON.parse
2、标准json key值使用""包裹,且统一只是用双引号(“”)
六、数组
1、map 映射:一一对应
2、reduce 汇总:取最后结果
3、filter 过滤:筛选符合条件的
4、forEach 循环
七、字符串
1、startsWith/endsWith 判断开头与结尾的字符
2、字符串模板
`${}` 反引号包裹HTML代码,${a}引入变量
八、面向对象(类class与构造函数分离)
1、写法:
class Text{
constructor(){}
method(){}
}
2、继承:
class Text1 extends Text{
constructor(...args){
super(...args)
}
method(){}
}
六、Promise 封装异步操作
Promise.all().then(resolve=>{},reject=>{})
适合大量的,无条件判断的异步请求
七、generator 封装异步请求(*)
function *show(){
yield
return
}