ES6

一、var和let,const的区别

1.let,const不存在变量提升

2.let,const不能在一作用域下重复定义同一个名称的变量

3.var是函数作用域,let,const是块级作用域(即一对花括号为一个作用域)

const,定义一个只读的常量,一旦定义就不能再改变这个常量的值。但是数组,对象,这种引用类型除外。

二、set和map

set相当于数组,但是里面的值是唯一的

数组去重:

var a=[1,2,3,4,1,3,5];

var b=[...new Set(a)];

map相当于对象

const m=new Map();

m.set("姓名","张三").set("年龄",15);

//for of

for(let [key,value] of m){}

三、箭头函数

1.箭头前面是参数,只有一个参数时可以省略小括号,没有参数或者有多个参数时,要用小括号括起来

v=>a+b;

等同于 function(v){

  return a+b;

}

2.如果箭头函数的代码块部分多于一条语句,就要使用大括号将它们括起来,只有一条语句就可以省略

3.如果箭头函数直接返回一个对象,必须在大括号外面加上小括号,否则会报错

id=>{id:id,name:"xh"};      //报错

id=>({id:id,name:"xh"});    //不报错

原文地址:https://www.cnblogs.com/putaopi/p/12771662.html