集合set/map
set优化数组去重一维数组
.size
.has
.add
.delete
.clear
.key
.values
.forEach(function(key,value){
})
map二维数组new map([])其实就是一个构造函数
主要是解决了对象的去重
get has delete clear add size set设置或添加元素 keys values
class继承
父类 class fu{
conturctor(name,age){
this.name=name;
this.age=age;
}
}
子类
class zi extends fu{
constructor(name,age){
super(name,age);
}
}
解构赋值
数据交换 [a,b]=[b,a]
函数中可以不按顺序传参
函数中可以返回多个数据function({b,c,a}){ return [a,b,c] }
字符串扩展方法(返回都是bloean)
includes("字符串",下标)
startswidth("字符串",下标)下标向后数
endswidth("字符串"下标)下标向前数
箭头函数
优点:改变this指向
缺点:不能new函数
for in和for of
for(var i in arr){i下标}遍历对象,数组效率低下
for(var i of arr){i值}遍历集合 set map
generation生成器函数
function * fn(){
yield "a";
yield "b";
yield "c";
yield "d";
}
var fn = fn();
console.log(fn.next()){value:a,done:false}false还可以继续执行
console.log(fn.next()){value:b,done:false}
console.log(fn.next()){value:c,done:false}
console.log(fn.next()){value:undefined,done:true}已结束
console.log(fn.next()){value:undefined,done:true}
console.log(fn.next()){value:undefined,done:true}
缺点要手动控制