这门课解决什么工作场景
很多上班族和转行者在学完基础 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 微信小程序第一阶段






