ES5和ES6的区别

首先JavaScript是由三部分组成:

  1. ECMAScript(核心):规定了语言的组成部分=>语法、类型、语句、关键字、保留字、操作符、对象
  2. BOM(浏览器对象): 支持访问和操作浏览器窗口,可以控制浏览器显示页面以外的部分
  3. DOM(文档对象模型): 把整个页面映射为一个多层节点结果,可借助DOM提供的API,可删除、添加和修改任何节点

然后谈ES5的特性:
1.strict模式:严格模式,限制一些用法
2.Array增加方法:有every、some、forEach、filter、indexOf、lastIndexOf、isArray、map、reduce、reduceRight方法
3.Object方法: Object.getPrototypeOf、Object.create等方法

其次是ES6的特性:

  1. 块级作用域 => 关键字let,常量const
  2. 对象字面量的属性赋值简写
  3. 赋值解构
  4. 展开运算符
  5. 箭头函数
  6. 字符串模板
  7. for of
  8. Class类,有constructor、extends、super,本质上是语法糖
  9. Map + Set + WeakMap + WeakSet
  10. proxies:使用代理(Proxy)监听对象的操作
  11. Symbol: 唯一命名
  12. Promises:处理异步操作的对象,使用了Promise对象之后可以用一种链式调用的方式来组织代码

最后是ES5和ES6的区别:
1.系统库的引入
Es5:需要先使用require导入React包,成为对象,再去进行真正引用;
Es6:可以使用import方法来直接实现系统库引用,不需要额外制作一个类库对象
2.导出及引用单个类
Es5:要导出一个类给别的模块用,一般通过module.exports来实现。引用时,则依然通过                          require方法来获取;
Es6:可以使用用export default来实现相同的功能,使用import方法来实现导入
3.定义组件
ES5:组件类的定义可以通过React.createClass实现
ES6:让组件类去继承React.Component类就可以了
4.组件内部定义方法
Es5:采用的是 ###:function()的形式,方法大括号末尾需要添加逗号;
Es6:省略了【: function】这一段,并且结尾不需要加逗号来实现分隔。
5.定义组件的属性类型和默认属性
Es5:属性类型和默认属性分别通过propTypes成员和getDefaultProps方法来实现(这两个方法应该是固定名称的);
  Es6:统一使用static成员来实现。
6.初始化STATE
Es5:初始化state的方法是固定的getInitialState;
Es6:第一种,直接构造state函数;第二种,相当于OC中的方法重写,重写constructor方法

ES5和ES6的区别来源 => 作者:QING_0054 | 链接:https://www.jianshu.com/p/4da39c00701e

posted @   _tianYou  阅读(512)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示