石川es6课程---18、ES6 复习

一、总结

一句话总结:

无论在讲课和学习中,复习总结都是很重要

二、ES6 复习

  1. 变量 let const
声明方式 能否重复声明 作用域 类型 是否支持变量提升
var 函数级 变量 是,undefined
let 不能,不允许在相同作用域内,重复声明同一个变量 块级 变量 否,referrenceError:is not defined
const 不能 块级 常量

暂时性死区:在代码块内,使用let命令声明变量之前,该变量都是不可用的。这在语法上,称为“暂时性死区”(temporal dead zone,简称 TDZ)

  1. 箭头函数

    • 方便

      • 如果只有一个参数,()可以省略
      • 如果只有一个语句且为return,{}可以省略
    • 修正this
      • 只会从自己的作用域链的上一层继承this
      • 箭头函数没有自己的this指针,通过 call() 或 apply() 方法调用一个函数时,只能传递参数
      • 函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象。所以this对象的指向是可变的,但是在箭头函数中,它是固定的。
      • 不可以当作构造函数,也就是说,不可以使用new命令,否则会抛出一个错误
      • 不可以使用arguments对象,该对象在函数体内不存在。如果要用,可以用 rest 参数代替
      • 不可以使用yield命令,因此箭头函数不能用作 Generator 函数
    • 不适用场合
      • 定义对象的方法,且该方法内部包括this。
      • 需要动态this的时候,也不应使用箭头函数

作用域 :一旦设置了参数的默认值,函数进行声明初始化时,参数会形成一个单独的作用域(context)。等到初始化结束,这个作用域就会消失。这种语法行为,在不设置参数默认值时,是不会出现的。

  1. 参数的扩展...rest

    • 收集
    • 扩展
    • 默认参数
  2. 数组方法
    • map 映射
    • reduce 汇总
    • filter 过滤
    • forEach 循环
  3. 字符串
    • startWith
    • endWith
    • 字符串模板  ${a}xxx${b}
  4. Promise
    • 封装异步操作
    • Promise.all([]).then()
  5. generator
    • 执行一半能暂停
    • yield
  6. JSON
    • JSON.stringfy()
    • JSON.parse()
  7. 面向对象
    • class Test{}
  8. 解构赋值
    • 左右结构一样
    • 右边是合法事情
    • 声明赋值一次完成
 

石川es6课程---18、ES6 复习的更多相关文章

  1. 石川es6课程---7、数组

    石川es6课程---7.数组 一.总结 一句话总结: ^ 主要就map(映射:一个对一个),reduce(汇总:一堆出来一个),filter  过滤器,forEach 循环(迭代) 四个方法 ^ 使用 ...

  2. 石川es6课程---3、变量let和常量const

    石川es6课程---3.变量let和常量const 一.总结 一句话总结: let非常好用,尤其是let的块级作用域可以解决之前要(function(){})()立刻执行函数做的块级作用域 1.js中 ...

  3. 石川es6课程---17、ES7 预览

    石川es6课程---17.ES7 预览 一.总结 一句话总结: 人的价值恒定规律:无论得意还是迷茫之时,你的价值都不靠外界的评判或者你内心的悲喜而决定.而是当时的恒定的.能够提升他只能靠你提升自己的能 ...

  4. 石川es6课程---13-16、generator-认识生成器函数

    石川es6课程---13-16.generator-认识生成器函数 一.总结 一句话总结: ` generator函数,中间可以停,到哪停呢,用 yield 配合,交出执行权 ` 需要调用next() ...

  5. 石川es6课程---12、Promise

    石川es6课程---12.Promise 一.总结 一句话总结: 用同步的方式来书写异步代码,让异步书写变的特别简单 用同步的方式来书写异步代码Promise 让异步操作写起来,像在写同步操作的流程, ...

  6. 石川es6课程---11、json

    石川es6课程---11.json 一.总结 一句话总结: ` 感觉更方便了一点,增加了一些简写 ` key-value 一样时可以简写:console.log({ a,b}}) ` 里面函数可以简写 ...

  7. 石川es6课程---9、面向对象-基础

    石川es6课程---9.面向对象-基础 一.总结 一句话总结: js老版本的面向对象和继承都不是很方便,新版的面向对象向其它语言靠拢,有了class,extends,constructor等关键字,用 ...

  8. 石川es6课程---8、字符串

    石川es6课程---8.字符串 一.总结 一句话总结: · es6字符串新增两个方法:startsWith(以什么开头),endsWith(以什么结尾) · 新增反单引号:可以解析变量,可以折行:le ...

  9. 石川es6课程---6、解构赋值

    石川es6课程---6.解构赋值 一.总结 一句话总结: 结构相同一一对应的方式赋值:let [json, arr, num, str] = [{ a: 1, b: 2 }, [1, 2, 3], 8 ...

随机推荐

  1. 前端配置jenkins

    tar命令详解:https://www.cnblogs.com/luck123/p/11401007.html

  2. 5 java 笔记

    1  建议不要在循环体内修改循环变量的值 2 java语言没有提供goto语句来控制程序的跳转 2 java语言同样也提供了continue和break关键字来控制程序的循环结构 3 java中的标签 ...

  3. mysql一些语句

    <!-- 报警量排行按创建时间每月来排行 --> <select id="alarmDaySort" resultType="alarm"&g ...

  4. 原创博客>>>解决粘包问题的方法

    目录 原创博客>>>解决粘包问题的方法 原创博客>>>解决粘包问题的方法 服务端: import socket import struct service=sock ...

  5. postman安装时提示打不开

    安装postman6.6.1时,提示打不开,如下图: 解决办法: 1.找到以下两个路径直接删除文件,注安装路径不同有可能不同 C:\Users\Administrator\AppData\Roamin ...

  6. CAN总线简介:如何以编程方式控制汽车

    最近,我正与Voyage公司的朋友合作研究,以实现福特Fusion空调系统(A/C)的编程控制.目前,Voyage公司正努力打造自动驾驶的终极目标:能够以低廉的价格成本和广泛的投放范围,把世界任何地方 ...

  7. laravel的下载与安装

    下载代码 https://github.com/laravel/laravel 在开发环境中配置好之后将根目录的 .env.example 文件改成 .env ,此文件是laravel的配置文件,将 ...

  8. 阿里云端安装mysql

    首先查看系统版本,是64位的centos7 file /sbin/init 安装指南如下 https://www.cnblogs.com/thinkingandworkinghard/p/671125 ...

  9. Linux( Ubantu ) 的简单使用

    1.Linux常用的快捷键 Ctrl + Alt+ T --打开终端 Ctrl + Shift + C --复制 Ctrl + Shift + V --粘贴 Ctrl + Shift + A --光标 ...

  10. Redis 安装 与 使用

    下载Redis压缩包.地址:https://github.com/MicrosoftArchive/redis/releases 下载完成后,双击运行安装程序. 点击 Next . 点击 Next 等 ...