为什么要学习Es6,那是因为需要学习React,但是React很多代码格式都借鉴与Es6.
1.Node.js支持Es6
var 声明的是全局变量,在全局范围内都有效;
let声明的变量旨只在代码块中有效,也就是在{}内有效;
const声明的变量表示只读的常量,一旦声明,不可修改,且必须要生声明,不然会报错.
3.结构赋值:
3-1:数组赋值
let [a,b,c]=[1,2,3];
3-2:对象赋值
let {foo,bar}={foo:‘aaa’,bar:‘bbb’};
4.Es6 Symbol
Symbol表示独一无二的值,所以每一个Symbol的值都是不相等的,所以Symol可以作为对象的属性名,可以保证属性的不重名。
5.ES6中的 Map和Set
var myMap=new Map();
var mySet=newSet();
6.ES6的Reflect和Proxy
Reflect是对对象提供了一些函数来操作对象中的属性值.而Proxy是在Reflect的提供的函数对原对象的操作下,Proxy新建一个对象来对原对象进行代理.
Reflect的使用:
Proxy的使用:?
7.ES6对象:
ES6允许对象的属性直接写变量,这时候属性名是变量名,属性值是变量值.
const age=12.
const petson={age,name}.
8.ES6函数:
1.普通函数的样式跟JavaScript的样式一样.
2.箭头函数
2-1:类型 函数名=(参数名…)=>函数体.
如:var fun=(a,b)=>a+b;
fun(6,2);//8
2-2:如果是函数体返回的是对象的时候,要用()将对象包裹起来.
var fun=(id,name)=>({id:id,name:name});
fun(6,‘Smith’);//{id:6,name:‘smith’}.