es6–ES6特性
常用的es6新特性:
- let && const
let命令也用于声明对象,但是作用域为局部。 - iterable类型
为了统一集合类型,ES6标准引入了新的iterable类型,Array、Map和Set都属于iterable类型,具有iterable类型的集合可以通过新的for … of循环来遍历。 - 解构赋值
- 箭头函数
- 类
es6 比 es5 增加了很多特殊的方法,如果你遇到了这些特殊的方法,你就可以确定它是 es6。
如果你的代码中没有引用这些特殊的方法,那我们就可以认为他是 es5 的。
所以前提你需要了解 es6 的语法才能做判断,高频使用的特性有箭头函数、解构赋值、let、const。
es5的继承是通过原型或者是构造函数机制来实现,es6用过class关键字定义类,里面有构造方法,类之间通过extends关键字实现,
子类必须在constructor方法中调用super方法
let和const有了块级作用域,变量声明不会提升相比于var
es6generator:
加粗样式generator函数就是一个封装的异步任务,也就是异步任务的容器,执行 Generator 函数会返回一个遍历器对象,async函数的实现,就是将Generator函数和自动执行器,包装在一个函数里
ES6 和node的commonjs模块化规范的区别。
es6是js的增强版,是js的语法规范,commonjs都只是为了解决js文件之间的依赖和引用问题,所以是一种js的包管理规范,其中的代表是Node遵循commonjs规范
箭头函数,以及他们的this。
所谓的箭头函数是在写法上面很简便和之前相比,类似于:(a,b)=>{return a+b;},箭头函数的this默认指向在定义它时,它所处的对象,而不是执行时的对象, 定义它的时候,可能环境是window(即继承父级的this)