ECMA6是什么

JavaScript 语言的下一代标准

ES6 的目标,是使得 JavaScript 语言可以用来编写大型的复杂的应用程序,成为企业级开发语言。


ECMAScript 和 JavaScript 的关系

ECMAScript 是 JavaScript 语言的国际标准

JavaScript 是 ECMAScript 的实现。

ECMA的发展历史
  • 1998 年 6 月,ECMAScript 2.0 版发布。

  • 1999 年 12 月,ECMAScript 3.0 版发布,成为 JavaScript 的通行标准,得到了广泛支持。

  • 2007 年 10 月,ECMAScript 4.0 版草案发布,对 3.0 版做了大幅升级,预计次年 8 月发布正式版本。

  • 2008 年 7 月,由于对于下一个版本应该包括哪些功能,各方分歧太大,争论过于激进,ECMA 开会决定,中止 ECMAScript 4.0 的开发

  • 2009 年 12 月,ECMAScript 5.0 版正式发布。

  • 2011 年 6 月,ECMAscript 5.1 版发布,并且成为 ISO 国际标准(ISO/IEC 16262:2011)。

  • 2013 年 3 月,ECMAScript 6 草案冻结,不再添加新功能。新的功能设想将被放到 ECMAScript 7。

  • 2013 年 12 月,ECMAScript 6 草案发布。然后是 12 个月的讨论期,听取各方反馈。

  • 2015 年6 月,ECMAScript 6 正式通过,成为国际标准。

Babel编译器

Babel是什么

是一个广泛使用的 ES6 转码器(编译器),可以 ES6 代码转为 ES5 代码,从而在浏览器或其他环境执行

安装Babel
$ npm install --global babel 或 npm install -g cnpm --registry=https://registry.npm.taobao.org
配置Babel
{"presets": ["latest"],"plugins": [],"devDependencies": {"babel-cli": "^6.0.0","babel-preset-latest": "^6.24.1"},"scripts": {"build": "babel src -d lib"}
}
babel-cli转码
  • src目录:用于放置 ECMAScript 6的代码文件。
  • lib目录:用于放置通过 Babel转码后的代码文件。
npm run build

[ES6] 细化ES6之 -- ECMA6是什么相关推荐

  1. [ES6] 细化ES6之 -- Class关键字

    类的声明 类是什么 类作为对象的模板,只是一个语法糖 class 关键字是让对象原型的写法更加清晰.更像面向对象编程的语法而已. // ES5创建构造函数 function Hero() {this. ...

  2. [ES6] 细化ES6之 -- 迭代器与生成器

    Symbol Symbol是什么 ES6 引入了一种新的原始数据类型Symbol,表示独一无二的值 Symbol 值通过Symbol函数生成 let symbol = Symbol(); consol ...

  3. [ES6] 细化ES6之 -- Promise对象

    Promise对象是什么 Promise对象是什么 ES6新增了Prormnise对象,该对象允许对延迟和异步操作流程进行控制.一个Promise对象就是一个代表了异步操作最终完成或者失败的对象. 开 ...

  4. [ES6] 细化ES6之 -- 对象的扩展

    对象的属性 属性表示法 ES6 允许在大括号里面,直接写入变量和函数,作为对象的属性和方法 ES5 let name = "张无忌"; function sayMe() {cons ...

  5. [ES6] 细化ES6之 -- 函数的扩展

    函数参数的默认值 函数参数指定状认值 ES6 之前,不能直接为函数的参数指定默认值,如果定义了形参,不传递实参时导致形参为undefined,只能采用变通的方法. //ES5 function fn( ...

  6. [ES6] 细化ES6之 -- 数组的扩展

    扩展运算符 扩展运算符 扩展运算符(spread)是三个点(...).它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列.允许一个表达式在原地展开 // 定义一个数组 var arr ...

  7. [ES6] 细化ES6之 -- 字符串的扩展

    判断是否包含 都区分大小写 includes()方法 返回布尔值,表示是否找到了参数字符串 let str = 'hebei baodingshi lianchiqu' console.log(str ...

  8. [ES6] 细化ES6之 -- 变量的解构赋值

    变量的解构赋值 解构赋值是什么 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值 var/let [变量名称1,变量名称2,...] = 数组或对象 本质上,这种写法属于"模式 ...

  9. [ES6] 细化ES6之 -- 前端模块化

    前端模块化 前言 前端开发领域发展到目前阶段: 零件化 - 最终呈现给用户是一个完整的产品(由各个零件组成的) 降低生产成本 – 多人协作(每个人各司其职) 降低使用成本 - 各个零件之间是低耦合的 ...

最新文章

  1. git warning: LF will be replaced by CRLF in 解决办法
  2. 玫瑰花函数matlab,网上收到的用matlab画玫瑰花的代码怎么不行啊,报告错误,求大神...
  3. CFI/CFG 安全防护原理详解(ROP攻击、DOP攻击、插装检测)
  4. 不需要的系统垃圾把它杀掉!
  5. android 入门-android Studio 配置
  6. Android PopupWindow Dialog 关于 is your activity running 崩溃详解
  7. linux meta 18.0.1 系统安装nodejs
  8. shell+中sum的用法_使用shell进行计算
  9. Makefile 编写规则
  10. 小米蓝牙耳机持续白灯_小米蓝牙耳机air2怎么重置
  11. 多个杀毒软件共存有什么影响。
  12. 人活着到底为了什么?
  13. html表格标题标签_HTML标题标签
  14. 解决IDEA : Could not autowire. No beans of ‘xxxx‘ type found
  15. 原生js实现轮盘抽奖,控制中奖概率(完整示例)
  16. 饥荒联机版服务器搭建教程-WeGame
  17. linux 终端修改字体大小,linux系统终端修改字体的方法
  18. SAP财务凭证常见的冲销步骤详细操作手册(FB08、AB08、VF11、FBRA等)
  19. 怎么在html文件中写css文件,html头文件中css怎么写?
  20. 视频镜头分割与关键帧提取

热门文章

  1. c++语言int最大值,c++ 关于如何获取int型的最大值
  2. tar (child): bzip2: Cannot exec: No such file or directory
  3. html5 ul li 自动收回,vue遍历四个ul ,每个ul中有四个li.如何不破坏html结构?
  4. Android图片特效处理之图片叠加
  5. socketserver库的使用
  6. tk.mybatis Example 多个or条件拼接
  7. python 图片转字符画
  8. js实现给数字加三位一逗号间隔的两种方法
  9. vsftpd 安装配置
  10. 转:一个网页图表的demon网站