ES6语法

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 72

ES6 语法

目  ES6 简介 
Contents
 ES6 的新增语法

 ES6 的内置对象扩展
目  ES6 简介
Contents
 ES6 的新增语法

 ES6 的内置对象扩展
1.1 计算机基础导读

ES6 简介
掌握程度:了解

要点提示


 03 : 39
 什么是 ES6 ?
 为什么要学习 ES6 ?
目  ES6 简介
Contents
 ES6 的新增语法

 ES6 的内置对象扩展
2.1 let 关键字

let 关键字 ( 一 )
掌握程度:应用

要点提示


 09 : 45
 let 使用语法?

 let 关键字有什么特点?
2.1.1 let 关键字

课堂问答

 let 关键字有什么特点?


2.2 let 关键字

let 关键字 ( 二 )
掌握程度:应用

要点提示


 02 : 10
 let 声明的变量是否存在变量提升 ?
2.3 let 关键字

let 关键字 ( 三 )
掌握程度:应用

要点提示


 03 : 18
 什么是暂时性死区?


2.3.1 let 关键字

课堂问答

 let 关键字是否存在变量提升?
 什么是暂时性死区?


2.3.2 let 关键字

课堂问答
知识总结

 let 关键字就是用来声明变量的
 使用 let 关键字声明的变量具有块级作用域
 在一个大括号中 使用 let 关键字声明的变量才具有块级作用域 var 关键
字是不具备这个特点的
 防止循环变量变成全局变量
 使用 let 关键字声明的变量没有变量提升
 使用 let 关键字声明的变量具有暂时性死区特性


2.4 经典面试题

经典面试题 ( 一 )
掌握程度:理解

要点提示


 04 : 16
 在遍历的计数器中,用 var 声明的变量 i 是全局的


2.4.1 经典面试题

课堂问答
知识总结

 关键点在于变量 i 是全局的,函数执行时输出的都是全局作用域下的 i


2.5 经典面试题

经典面试题 ( 二 )
掌握程度:理解

要点提示


 02 : 18
 在遍历的计数器中,用 let 声明的变量 i 是局部的


2.5.1 经典面试题

课堂问答
知识总结

 关键点在于每次循环都会产生一个块级作用域,每个块级作用域中的变
量都是不同的,函数执行时输出的是自己上一级(循环产生的块级作用
域)作用域下的 i 值 .


3.1 const 关键字

const 关键字 ( 一 )
掌握程度:应用

要点提示


 03 : 14
 const 用来声明常量,具备块级作用域
3.2 const 关键字

const 关键字 ( 二 )
掌握程度:应用

要点提示


 01 : 49
 const 声明的常量,需要给定初始值

3.2.1 const 关键字

课堂问答

 const 关键字声明的变量具备什么特性?


3.3 const 关键字

const 关键字 ( 三 )
掌握程度:应用

要点提示


 04 : 42
 常量一旦赋值,不能被更改


3.3.1 const 关键字

课堂问答

 const 关键字声明的变量能被重新赋值吗?


3.3.2 const 关键字

课堂问答
知识总结

 const 声明的变量是一个常量
 既然是常量不能重新进行赋值,如果是基本数据类型,不能更改值,如
果是复杂数据类型,不能更改地址值
 声明 const 时候必须要给定值


4.1 let 、 const 、 var 关键字的区别

let 、 const 、 var 关键字的区



掌握程度:记忆

要点提示


 02 : 52
 记忆三个关键字的特点


4.1.1 let 、 const 、 var 关键字的区

课堂问答
知识总结

 使用 var 声明的变量,其作用域为该语句所在的函数内,且存在变量
提升现象
 使用 let 声明的变量,其作用域为该语句所在的代码块内,不存在变量
提升
 使用 const 声明的是常量,在后面出现的代码中不能再修改该常量的


5.1 解构赋值

数组解构赋值
掌握程度:应用

要点提示


 05 : 21
 解构赋值:分解数据结构,为变量赋值

 数组解构的语法是怎样?
5.1.1 解构赋值

课堂问答

 如何理解解构赋值?
 数组解构语法怎样去写?


5.2 解构赋值

对象解构 ( 一 )
掌握程度:应用

要点提示


 03 : 58
 结合数组解构来理解对象解构
5.3 解构赋值

对象解构 ( 二 )
掌握程度:应用

要点提示


 02 : 51
 对象解构可以进行别名设置

5.3.1 解构赋值

课堂问答

 对象解构与数组解构语法有什么不同?
 对象解构是否可以定义别名?


5.3.2 解构赋值

课堂问答
知识总结

 解构赋值就是把数据结构分解,然后给变量进行赋值
 如果结构不成功,变量跟数值个数不匹配的时候,变量的值为 undefin
ed
 数组解构用中括号包裹,多个变量用逗号隔开,对象解构用花括号包裹,
多个变量用逗号隔开
 利用解构赋值能够让我们方便的去取对象中的属性跟方法


6.1 箭头函数

箭头函数
掌握程度:应用

要点提示


 08 : 21
 记忆箭头函数语法规则


6.1.1 箭头函数

3 分钟

 动动手,试着自己定义箭头函数吧!
练习


 定义一个箭头函数,传递两个形参 num1 、 num2
 调用定义的函数,打印 num1 与 num2 的和
提示


6.2 箭头函数

箭头函数中 this 关键字


掌握程度:理解

要点提示


 06 : 23
 箭头函数 this 指向定义它的地方


6.2.1 箭头函数 this 指向

课堂问答
知识总结

 箭头函数不绑定 this 关键字,如果在箭头函数中使用 this , this 关键


字将指向箭头函数定义位置中的 this
 箭头函数的优点在于解决了 this 执行环境所造成的一些问题。比如:解
决了匿名函数 this 指向的问题(匿名函数的执行环境具有全局性),包
括 setTimeout 和 setInterval 中使用 this 所造成的问题


6.3 箭头函数面试题

箭头函数面试题
掌握程度:理解

要点提示


 02 : 41
 箭头函数 this 指向定义它的地方


6.3.1 箭头函数面试题

课堂问答
知识总结

 箭头函数 this 指向的是被声明的作用域里面,而对象没有作用域的,所


以箭头函数虽然在对象中被定义,但是 this 指向的是全局作用域


7.1 剩余参数

剩余参数
掌握程度:应用

要点提示


 05 : 01
 用于解决实参个数不定的情况
7.2 剩余参数

剩余参数和解构配合使用
掌握程度:应用

要点提示


 02 : 47
目  ES6 简介
Contents
 ES6 的新增语法

 ES6 的内置对象扩展
8.1 Array 对象拓展

Array 扩展运算符
掌握程度:应用

要点提示


 04 : 12


8.1.1 拓展运算符

课堂问答
知识总结

 扩展运算符可以将数组或者对象转为用逗号分隔的参数序列


8.2 Array 对象拓展

Array 扩展运算符应用场景 (
一)
掌握程度:理解

要点提示


 06 : 16
 合并数组


8.2.1 拓展运算符应用场景 ( 一 )

课堂问答
知识总结

 扩展运算符可以将多个数组进行合并
 利用 [... 数组一 , ... 数组二 ]
 或者利用 push 方法


8.3 Array 对象拓展

Array 扩展运算符应用场景 (
二)
掌握程度:理解

要点提示


 03 : 31
 将伪数组转成真正的数组


8.3.1 拓展运算符应用场景 ( 二 )

课堂问答
知识总结

 扩展运算符可以将伪数组转成真的数组,转成了数组,就能使用数组中
的方法
 例如:
let oDivs = document.getElementsByTagName('div');
oDivs = [...oDivs];


8.4 Array 对象拓展

Array.from 方法
掌握程度:应用

要点提示


 04 : 46
 将伪数组或可遍历对象转换为真正的数组


8.4.1 Array.from 方法

课堂问答
知识总结

 可以把伪数组或者是对象转成数组形式
 如果是对象,属性需要是对应的索引值
 索引需要跟值还有长度匹配,如果没有匹配到,那么数组对应位置的值
就是 undefined


8.5 Array 对象拓展

Array 实例方法: find


掌握程度:应用

要点提示


 04 : 59
 find 方法查找数组中第一个匹配的值


课堂问答
知识总结

 用于找出第一个符合条件的数组成员,如果没有找到返回 undefined
 只会匹配第一个满足条件的


8.5.2 Array 实例方法: find

3 分钟

 动动手,试着使用 find 方法来查询元素吧!


练习


 定义一个数组
 利用 find 方法来匹配符合条件的元素

提示


8.6 Array 对象拓展

Array 实例方法: findIndex


掌握程度:应用

要点提示

视  02 : 34
 查找数组中第一个匹配的值的索引

8.6.1 Array 实例方法: findIndex

课堂问答
知识总结

 用于找出第一个符合条件的数组成员的位置,如果没有找到返回 -1


8.7 Array 对象拓展

Array 实例方法: includes


掌握程度:应用

要点提示

视  02 : 52
 判断某个数组是否包含给定的值,返回布尔值


8.7.1 Array 实例方法: includes

课堂问答
知识总结

 用于判断数组中是否包含该元素,如果有返回是 true ,如果没有返回


是 false


8.7.2 Array 实例方法: includes

3 分钟

 动动手,试着使用 includes 方法来查询元素吧!


练习


 定义一个数组
 利用 includes 方法来判断是否含有该元素

提示


9.1 String 对象拓展

模板字符串
掌握程度:应用

要点提示

视  07 : 29
 使用反引号定义


9.1.1 模板字符串

课堂问答
知识总结

 模板字符串语法是用 反引号定义
 模板字符串中可以解析变量,不需要用 + 号进行拼接,用 ${ 变量 }
 模板字符串中可以换行
 在模板字符串中可以调用函数,用 ${ 函数 ()}


9.1.2 模板字符串

5 分钟

 动动手,试着用模板字符串拼接变量跟函数把!
练习


 定义一个变量和一个函数
 利用反引号包裹字符串,利用 ${} 把变量跟函数包裹起

提示 来


9.2 String 对象拓展

startsWith 方法和 endsWith 方



掌握程度:应用

要点提示

视  03 : 35
 用来判断字符串里面是否包含某个字符

9.2.1 startsWith 方法和 endsWith 方

课堂问答
知识总结

 startsWith() :表示参数字符串是否在原字符串的头部,返回布尔值
 endsWith() :表示参数字符串是否在原字符串的尾部,返回布尔值


9.3 String 对象拓展

repeat 方法
掌握程度:应用

要点提示

视  01 : 42
 使用 repeat 语法,知道 repeat 作用

9.3.1 repeat 方法

课堂问答
知识总结

 repeat 方法表示将原字符串重复 n 次,返回一个新字符串


10.1 set 对象

创建 set 数据结构
掌握程度:应用

要点提示

视  04 : 04
 set 是一种数据结构
总  set 有什么特点
10.1.1 set 数据结构

课堂问答
知识总结

 set 是一种数据结构
 set 是一个构造函数
 用来存储数据
 set 里面存储的值是唯一的


10.2 set 对象

利用 set 数据结构做数组去重
掌握程度:应用

要点提示

视  01 : 51
 set 里面存储的元素都是唯一的,没有重复的值
10.3 set 对象

set 对象实例方法
掌握程度:应用

要点提示

视  05 : 37
 添加、删除、判断是否包含、清空

10.3.1 set 对象实例方法

课堂问答
知识总结

 add(value) :添加某个值,返回 Set 结构本身


 delete(value) :删除某个值,返回一个布尔值,表示删除是否成功
 has(value) :返回一个布尔值,表示该值是否为 Set 的成员
 clear() :清除所有成员,没有返回值


10.4 set 对象

遍历 set
掌握程度:应用

要点提示

视  01 : 46
 遍历 set 集合

10.4.1 遍历 set

课堂问答
知识总结

 set 结构的实例与数组一样,也拥有 forEach 方法,用于对每个成员执


行某种操作,没有返回值
 s.forEach(value => console.log(value))


ES6 语法 - 复习

今日复习

为什么要使用 ES6 语法?

ES6 新增了哪些语法

ES6 中内置对象新增的方法
 能够说出使用 let 关键字声明变量的特点

 能够使用解构赋值从数组中提取值
目标  能够说出箭头函数拥有的特性

TARGET  能够使用剩余参数接收剩余的函数参数

 能够使用拓展运算符拆分数组

 能够说出模板字符串拥有的特性

You might also like