
JS V.S. ES
JS是一种编程语言,ES是一种标准。JS是实现ES标准的语言。
ES6新特性——const
不允许重复声明;
定义的变量不属于顶层对象window;
不存在变量提升;
暂时性死区;
块级作用域;
如果const定义的是引用类型,则变量的值可以改变。如果不想改变,使用Object.freeze(obj)冻结对象(但是这个方法只能浅层冻结,如果对象里面还有对象,则需要自己写一个递归方法去freeze对象)
定义变量优先使用const
ES6新特性——箭头函数
箭头函数里面没有this,如果用的话会去上级作用域中去找,这时的this指向跟之前的普通函数中的this指向是不同的;所以,箭头函数作为事件的回调函数,在this的使用上会有一些问题;
同理,定义对象属性的方法时使用箭头函数也会有问题;
不能在箭头函数中使用arguments;
不能使用箭头函数作为构造函数;
不能使用箭头函数作为原型下的方法
ES6新特性——解构赋值
使用场景:
函数参数
函数返回值
变量互换
JSON应用
Ajax请求应用
解决ES6兼容问题
BABEL


ES6官网
http://www.ecma-international.org/ecma-262/6.0/
老师总结电子书:
http://es.xiecheng.live/
es6学习中文网址

string fdfd = 0;