什么是ES6?

又叫es2015,es7是2016

ECMAScript es标准的作用: 定义js的发展方向的一套标准

ECMAScript ES

  • es3
  • es5
    • 严格模式
  • es6/es2015/ECMAScript 6.0
    • 变量定义变化let const
    • 块级作用域
    • 解构赋值
    • 字符串、函数、数组的扩展
    • 新的面向对象编程语法
    • 异步
    • ......

ES6狭义上就是指ES2015,广义上是一个泛指,指5.1版本以后的JavaScript的下一代标准,涵盖了ES2015,ES2016,ES2017等;亦指下一代JavaScript语言本书中提到 ES6 的地方,一般是指 ES2015 标准

Bable

Bable:Babel是一个JavaScript编译器,它可以将ES6+语法编译为浏览器支持的ES5语法。

TypeScript

(也是一个趋势,很火热)

TypeScript是 JavaScript 的一个超集,支持 ECMAScript 6 标准。

TypeScript 是由微软开发的自由和开源的编程语言。

TypeScript 设计目标是开发大型应用,它可以编译成纯 JavaScript,编译出来的 JavaScript 可以运行在任何浏览器上。

语言特性

TypeScript 是一种给 JavaScript 添加特性的语言扩展。增加的功能包括:

  • 类型批注和编译时类型检查
  • 类型推断
  • 类型擦除
  • 接口
  • 枚举
  • Mixin
  • 泛型编程
  • 名字空间
  • 元组
  • Await

以下功能是从 ECMA 2015 反向移植而来:

  • 模块
  • lambda 函数的箭头语法
  • 可选参数以及默认参数

JavaScript 与 TypeScript 的区别

TypeScript 是 JavaScript 的超集,扩展了 JavaScript 的语法,因此现有的 JavaScript 代码可与 TypeScript 一起工作无需任何修改,TypeScript 通过类型注解提供编译时的静态类型检查。

TypeScript 可处理已有的 JavaScript 代码,并只对其中的 TypeScript 代码进行编译。

ES5 ⊂ ES6 ⊂ TypeScript

results matching ""

    No results matching ""