这门课解决什么工作场景

很多上班族和转行者在学完基础 JavaScript 后,去看公司老项目的代码或者一些开源库,经常会遇到看不懂的写法。比如箭头函数、变量解构、模板字符串、块级作用域这些,它们并不是新语言,而是 ES6 带来的语法规范升级。这门课就是来解决这个断层的。它不教你写页面,而是专门讲清楚现代前端开发里每天都在用的语法特性。只要你的工作涉及 Web 前端、React Native 跨端开发,或者需要维护基于 Babel 编译的现代工程,这些语法都是绕不开的底层基础。课程前几节直接把 ES6 怎么运行、怎么用工具转换成旧版浏览器能认的 ES5 交代清楚,让你明白这些新语法在实际工程里是怎么跑起来的。

适合什么基础与建议先看哪几块

这套资料不适合零基础。你需要对 JavaScript 的基本变量类型、函数定义、作用域有概念,如果连写个简单的函数都有困难,建议先补基础再来。如果你已经有了基础语法底子,直接看就行。建议优先看变量声明和解构这两块,也就是 let、const 以及变量解构赋值。这部分最容易在老代码迁移到新代码时踩坑,比如暂时性死区、不允许重复声明这些细节,平时自己写代码报错了很难排查。把这两块看透,再去看字符串、函数默认参数、箭头函数等内容会更顺畅。课程里关于转换工具的讲解可以快速过一遍,理解原理即可,不用死记具体配置。

学完能独立做什么与资料怎么配合练习

学完之后,你应该能独立读懂现代前端框架的源码或业务代码,并且在自己写功能时,能自然地用 const 管理不变量、用解构简化参数传递、用块级作用域避免变量污染。资料配合练习的方法很简单:看视频时不要只记结论,每讲一个特性,就在代码编辑器里敲一遍。比如讲到对象解构,就自己写几个嵌套对象去解构,试着把老写法的 var 换成 let 和 const,观察运行报错有什么不同。视频里提到的转换工具,自己本地建个小文件跑一下转换过程,看看 ES6 语法最终变成了什么样。光看不练,过几天就忘,动手敲一遍代码才是把这些语法变成肌肉记忆的唯一办法。


本课程的目标是让学员了解ECMAScript6的新特性,并在React Native、Web等项

课程目录

*   01 ECMAScript6基础/

  *   01 ECMAScript6简介.mp4 06:29

  *   02 运行ECMAScript6.mp4 15:53

  *   03 ES6转换到ES5(Babel).mp4 14:31

  *   04 ES6转换到ES5(Traceur).mp4 06:50

*   02 let和const关键字/

  *   01 let的作用域.mp4 21:31

  *   02 let的定义顺序.mp4 05:24

  *   03 暂时性死区.mp4 06:48

  *   04 不允许变量重复声明.mp4 05:49

  *   05 块级作用域.mp4 23:42

  *   06 const关键字.mp4 13:27

  *   07 对象常量.mp4 23:51

  *   08 全局变量.mp4 02:03

*   03 变量的解构(Destructuring)赋值/

  *   01 数组的解构赋值(1).mp4 08:58

  *   02 数组的解构赋值(2).mp4 08:51

  *   03 数组的解构赋值(3).mp4 16:33

  *   04 对象的解构赋值(1).mp4 10:37

  *   05 对象的解构赋值(2).mp4 17:41

  *   06 字符串、数值和布尔的解构赋值(3).mp4 08:26

  *   07 函数参数的解构赋值.mp4 09:28

  *   08 圆括号的使用方法.mp4 10:02

  *   09 变量解构的应用(1).mp4 05:13

  *   10 变量解构的应用(2).mp4 12:12

*   04 字符串的扩展/

  *   01 字符的Unicode表示法.mp4 28:11

  *   02 String.fromCodePoint方法.mp4 03:28

  *   03 字符串的遍历器接口.mp4 03:26

  *   04 在字符串中查找子字符串.mp4 06:54

  *   05 将原字符串重复n次.mp4 10:09

  *   06 模板字符串.mp4 14:02

  *   07 标签模板.mp4 19:37

  *   08 String.raw方法.mp4 05:20

*   05 数值的扩展/

  *   01 ES6中二进制和八进制表示法.mp4 07:36

  *   02 Number.isFinite和Number.isNaN.mp4 15:05

  *   03 parseInt、parseFloat和isInteger.mp4 07:18

  *   04 判断两个浮点数是否相等的Number.EPSILON.mp4 07:15

  *   05 Math对象扩展1(trunc、sign、cbrt).mp4 12:43

  *   06 Math对象扩展2(clz32、imul、fround、hypot).mp4 19:12

  *   07 Math对象扩展3(对数方法).mp4 05:10

*   06 数组扩展/

  *   01 Array.from方法(将两类对象转换为数组).mp4 19:28

  *   02 Array.of方法(将一组值转换为数组).mp4 05:24

  *   03 copyWithin方法(迁移数组元素).mp4 05:57

  *   04 find_findIndex方法.mp4 10:44

  *   05 fill方法.mp4 04:31

  *   06 entries和keys方法.mp4 03:23

  *   07 数组的空位.mp4 11:09

*   07 函数扩展/

  *   01 函数参数的默认值.mp4 13:59

  *   02 函数参数默认值与解构赋值默认值相结合.mp4 19:36

  *   03 函数参数默认值的位置与调用方式.mp4 05:09

  *   04 函数的length属性.mp4 05:37

  *   05 函数参数的作用域.mp4 04:53

  *   06 函数参数默认值的应用.mp4 03:12

  *   07 rest参数.mp4 14:24

  *   08 扩展运算符.mp4 06:35

  *   09 扩展运算符的应用.mp4 25:22

  *   10 name属性.mp4 05:23

  *   11 箭头函数.mp4 16:10

*   08 对象扩展/

  *   01 属性和方法的简洁表示法.mp4 12:15

  *   02 属性名表达式.mp4 16:43

  *   03 Object.is方法.mp4 04:37

  *   04 Object.assign方法.mp4 15:53

  *   05 Object.assign方法的应用(克隆对象).mp4 13:29

*   09 Symbol(解决属性名冲突问题)/

  *   01 Symbol基础.mp4 14:23

  *   02 Symbol用作对象属性名.mp4 15:08

  *   03 Symbol用作对象属性名.mp4 12:13

  *   04 Symbol.for-Symbol.keyFor函数.mp4 08:53

*   10 拦截对象操作的Proxy(代理)和Reflect对象/

  *   01 Proxy基础.mp4 15:41

  *   02 拦截属性的读取操作:get.mp4 18:48

  *   03 拦截属性的写入操作:set.mp4 20:58

  *   04 拦截函数的调用、call和apply:apply.mp4 08:33

  *   05 隐藏属性操作:has.mp4 09:37

  *   06 拦截new指令:construct.mp4 05:22

  *   07 拦截delete操作:deleteProperty.mp4 03:20

  *   08 拦截defineProperty操作:defineProperty.mp4 05:34

  *   09 Reflect对象:defineProperty.mp4 04:12

*   11 Generator函数/

  *   01 基础知识.mp4 14:12

  *   02 yield语句.mp4 13:12

  *   03 next方法的参数.mp4 07:57

  *   04 for_of循环(用于自动遍历Generator函数返回的遍历器).mp4 11:01

  *   05 throw方法.mp4 18:03

  *   06 return方法.mp4 13:25

  *   07 yield*语句与递归Generator函数.mp4 15:16

  *   08 将Generator函数作为对象属性.mp4 04:05

  *   09 Generator函数的this.mp4 10:32

  *   10 Generator函数与状态机.mp4 05:34

*   12 Promise对象/

  *   01 基础知识.mp4 15:55

  *   02 then方法.mp4 04:47

  *   03 catch方法.mp4 04:47

*   13 异步操作与async函数/

  *   01 通过Generator函数与Promise对象封装异步任务.mp4 18:13

  *   02 async函数.mp4 10:35

*   14 类(Class)/

  *   01 基础知识.mp4 28:37

  *   02 通过Class表达式定义类.mp4 09:46

  *   03 类的继承.mp4 09:05

  *   04 原生构造函数的继承.mp4 11:24

  *   05 类的getter和setter方法.mp4 05:34

  *   06 Generator方法.mp4 06:14

  *   07 类的静态方法和静态属性.mp4 08:38

  *   08 new.target属性.mp4 07:46

  *   09 抽象类.mp4 09:31

  *   10 微信小程序第一阶段