Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Es6

348 views

Published on

ES6 intro

Published in: Software
  • Be the first to comment

  • Be the first to like this

Es6

  1. 1. ES6 2015-11-13
  2. 2. 基本概念 • ES6的别名 Harmony ,es-next,ES2015 • ES2015是官方在2015年6月定的最终版 • 未来的版本以ES[xxxx],例如ES2016, ES2017
  3. 3. forEach isArray reduce indexOf lastIndexOf some defineProperty bind class let const arrow functions template string default parameters super promise
  4. 4. 块级作用域(Let + Const)
  5. 5. 变量泄漏 污染全局
  6. 6. 变量提升
  7. 7. var let const 创建块级作用域 否 是 是 声明赋值同时 否 否 是 变量提升 是 否 否 可重复声明 是 否 否 可修改 是 是 否 异同
  8. 8. 模版字符串(Template Strings )
  9. 9. 拼接字符串
  10. 10. 拼接换行
  11. 11. 箭头函数(Arrows)
  12. 12. 还记得此题吗?
  13. 13. 如何解决? 还有
  14. 14. 箭头函数绑定作用域
  15. 15. Arrows小结 • 没有function关键字 • 新增“胖箭头” (=>) • 默认增加 return关键字 • 显示的添加return以及有多行语句时,需要添加大括号 • 当返回值为对象时,函数体必须用小括号 • 有0个或超过1个参数时,必须带小括号 • 绑定当前作用域的this
  16. 16. 解构(Destructuring)
  17. 17. 如何交换两个变量的值?
  18. 18. 现在可以这样
  19. 19. 字符串 对象 数组
  20. 20. 默认参数(Default)
  21. 21. 后续参数(Rest)
  22. 22. 扩展(Spread Operator)
  23. 23. 模块(Modules)
  24. 24. 我们为何需要模块?
  25. 25. 我们为何需要模块? Web Site 到 Web App 的进化 代码指数倍增长 代码需要解偶 代码需要解决依赖
  26. 26. 模块的重要性
  27. 27. 模块进化史 函数名容易冲突,污染全局 起初我们这样 相关链接
  28. 28. 模块进化史 命名空间,简单封装 只是简单的减少了全局变量
  29. 29. 匿名闭包(IIFE) 模块进化史 函数可产生作用域
  30. 30. 模块进化史 CommonJS - API Standard 2009 Node.js
  31. 31. 模块进化史 模块的定义与引用
  32. 32. 模块进化史
  33. 33. 模块进化史 AMD CMD Async Module Definition Common Module Definition RequireJS SeaJS
  34. 34. 模块进化史 AMD
  35. 35. 模块进化史 CMD
  36. 36. 模块进化史 Browserify Webpack CommonJS CommonJS、AMD、CMD、ES6 Modules
  37. 37. 模块进化史
  38. 38. 未完待续......

×