石川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. js大神成长指路

    随着我的成长,我的兴趣也在不断地分化,他们似乎都是不相关的领域.我喜欢数学就像我喜欢历史一样.我的目标是成为一个多才多艺的人——一个学者——在许多领域都能成为杰出的人才.这是一项艰巨的任务.突然间,我 ...

  2. 阿里云 elasticsearch 增删改查

    kibana 控制台 # 查询所有数据 GET /yixiurds_dev/_search { "query": { "match_all": { } } } ...

  3. powershell查看版本信息

    在终端输入$PSVersionTable

  4. NTP时间同步服务和DNS服务

    NTP服务是搭建集群的第一步,是保持时间的同步性,保持一致 服务端 首先下载 yum install ntp –y 而后打开配置文件 /etc/ntp.conf 配置文件里有很多内容,但只要留三行就足 ...

  5. 复习rem

    在Web页面制作中,我们一般使用“px”来设置我们的文本,因为他比较稳定和精确.但是这种方法存在一个问题,当用户在浏览器中浏览我们制作的Web页面时,他改变了浏览器的字体大小(虽然一般人不会去改变浏览 ...

  6. 重新学习ESP32(零)之环境搭建——转载——windows平台

    原文来自:https://www.makingfun.xyz/2018/09/18/esp32-hello-world/ 前言 前几天看到乐鑫的公众号推送了一篇文章,说是ESP8266最新的SDK风格 ...

  7. Java-WEB开发常用方法整理

    /** * 此类中收集Java编程中WEB开发常用到的一些工具. * 为避免生成此类的实例,构造方法被申明为private类型的. * @author */ import java.io.IOExce ...

  8. JAVA-产生唯一32位GUID

    import java.net.*; import java.util.*; import java.security.*; import org.apache.log4j.Logger; /** * ...

  9. Mybatis 向oracle批量插入与更新数据

    插入 <insert id="batchSave" parameterType="java.util.List"> INSERT INTO T_UP ...

  10. spring-boot + mybatis + mysql+shiro 整合

    参考地址 https://blog.csdn.net/clj198606061111/article/details/82948757 https://blog.csdn.net/ityouknow/ ...