ES6的简单理解

ECMAScript6(简称ES6)是JavaScript语言的下一代标准,JavaScript是ECMAScript的一种实现。

ES6相对于JavaScript,增加了一些新的特性,主要的又如下简单介绍:

1. 常量
  常量,这个不多说,大多数语言都有,如c,c++,java,go等。python之前也没有,PEP8中有部分支持。 加入常量之后,虽然不如之前灵活,但会常量会做类型检查,同时加快编译速度。
2. => 函数定义
  =>函数定义, 类似于 CoffeeScript中函数绑定,可以将javascript中this关键词动态地绑定设定为当前函数挂在所在的对象上。=>绑定,使得原先函数绑定变得容易。同时由于ES6中语法中需要用{}()来进行代码分割,使得代码相比于CoffeeScript更加清晰,容易阅读。
3. 模板
  模板,自动支持了模板机制,比之前ES5,不需要额外引入其他模板引擎。
4. 扩展参数处理
5. 解构赋值
  扩展参数处理,是非常好的,用...来扩展参数,类似于go语法。相对容易理解。另外在函数解构赋值中,也和Go很相近,支持多变量赋值,以及默认参数。
6. 模块
  是一种抽象。类似于Package或者namespace的概念。
7. 类(最大的改进)
  终于开始支持面向对象编程,支持了继承,以及静态函数等相关操作;
8. Iterators 和 Generators
  迭代和生成器,我理解如C++中的Iterator,以及Python中的迭代和生成器。但感觉语法还是有些复杂,希望之后还能够改进。
9. Map/Set/WeakMap/WeakSet
  对数据函数的进一步支持
10.内嵌函数
  提供更多的内部函数封装,主要用模块以及面向对象来实现。
11. Promise
  对异步操作进行更好的封装,在React-Native中已经直接可以使用React.
12. 反射机制
  反射机制类似于Go中Reflect,或者typeof 等机制
13. 国际化和本地化支持
  这个很不错,在其它语言中也有支持。
以及其它

 

总结:ES6新的特性有如下

  • 新增了块级作用域(let,const)
  • 提供了定义类的语法糖(class)
  • 新增了一种基本数据类型(Symbol)
  • 新增了变量的解构赋值
  • 函数参数允许设置默认值,引入了rest参数,新增了箭头函数
  • 数组新增了一些API,如 isArray / from / of 方法;数组实例新增了 entries(),keys() 和 values() 等方法
  • 对象和数组新增了扩展运算符
  • ES6 新增了模块化(import/export)
  • ES6 新增了 Set 和 Map 数据结构
  • ES6 原生提供 Proxy 构造函数,用来生成 Proxy 实例
  • ES6 新增了生成器(Generator)和遍历器(Iterator)

更详细的讲解可以参加网址:es6新特性


 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值