什么是ES6
ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言
为什么使用ES6
ES6 主要是为了解决 ES5 的先天不足,比如 JavaScript 里并没有类的概念,但是目前浏览器的 JavaScript 是 ES5 版本,大多数高版本的浏览器也支持 ES6,不过只实现了 ES6 的部分特性和功能。
ES6特性或用法
变量
- 声明方法:let、 const
- 解构赋值
- 块级作用域
函数
- 箭头函数
- 参数扩展、数组展开
- 原生对象扩展
-- map映射、reduce 汇总、filter 过滤器、forEach 循环
-- “·” $:模板字符串
-- JSON 写法与JSON对象
异步请求
- Promise
- async/await
面向对象
- class:类声明
- constructor:构造函数
- extends:继承
- super:父类/超类
模块系统
- export 定义模块
- import 使用模块
兼容必要工具
- babel(浏览器兼容)
- webpack (打包上线)
ES6的浏览器兼容性
-
PC端浏览器
-- chrome:51版起,可支持97%的ES6新特性
-- firefox:53版起,可支持97%的ES6新特性
-- safari:10版起,可支持99%的ES6新特性
-- IE:Edge 15可支持96%的ES6新特性。Edge14可支持93%。(IE7~11基本不支持ES6) -
移动端浏览器
-- IOS:10.0版起,可支持99%的ES6新特性
-- Android:基本不支持ES6新特性(5.1仅支持25%) -
服务器端
-- node.js:6.5版起,可支持97%的ES6新特性 -
兼容解决方法:
比较通用的工具有babel、jsx、traceur、es6-shim等 -
具体兼容性
ES5:http://kangax.github.io/compat-table/es5/
ES6:http://kangax.github.io/compat-table/es6/
更多ES6学习地址:
https://www.runoob.com/w3cnote/es6-tutorial.html
https://es6.ruanyifeng.com/#docs/intro
网友评论