let和var的区别:
相同点 :在全局声明的变量是全局变量,在局部声明的变量是局部变量
不同点 :
1、let声明的变量不能重复声明
2、let声明的变量不能提升
3、let声明的变量只在当前块作用域中有效
4、let声明的变量会产生暂时性的死区,只在当前块作用域中查找
conts
1、conts声明的变量是常量,不能改变
2、conts声明的变量必须赋初值
3、conts声明的变量不能重复声明
4、conts声明的变量不能提升
5、conts声明的变量只在当前块作用域中有效
6、conts声明的变量会产生暂时性的死区,只在当前块作用域中查找
es5和es6的区别
1、es6新增了箭头函数,es5没有;
2、ES6中新增了块级作用域,es5没有;
3、ES6引入Class概念,不再像ES5一样使用原型链实现继承;
4、ES6中可以设置默认函数参数,es5不行;
5、ES6中新增了promise特性。