小白JavaScript学习笔记----JavaScript 进阶

文章目录

  • 一.JavaScript进阶 第一天(作用域&解构&箭头函数)
    • 1.1作用域
      • 1.1.1局部作用域
        • 1.1.1.1函数作用域:
        • 1.1.1.2块作用域:
      • 1.1.2全局作用域
      • 1.1.3作用域链(面试)
      • 1.1.4JS垃圾回收机制
        • 1.1.4.1 什么是垃圾回收机制?
        • 1.1.4.2 内存的生命周期
        • 1.1.4.3 拓展-JS垃圾回收机制-算法说明
      • 1.1.5闭包
      • 1.1.6变量提升
    • 1.2函数进阶
      • 1.2.1函数提升
      • 1.2.2函数参数
        • 1.2.2.1动态参数
        • 1.2.2.2剩余参数
        • 1.2.2.3展开运算符
      • 1.2.3箭头函数(重要)!!!!!!
        • 1.2.3.1基本语法
        • 1.2.3.2箭头函数参数
        • 1.2.3.3箭头函数this
    • 1.3解构赋值
      • 1.3.1数组解构
      • 1.3.2对象解构
    • 1.4遍历数组forEach方法(重点)
    • 1.5综合案例
      • 1.5.1筛选数组filter方法(重点)
      • 1.5.2案例 商品列表价格筛选
  • 二.JavaScript进阶 第二天(构造函数&数据常用函数)
    • 2.1深入对象
      • 2.1.1创建对象三种方式
        • 2.1.1.1利用对象字面量创建对象
        • 2.1.1.2利用 new Object 创建对象
        • 2.1.1.3利用构造函数创建对象
      • 2.1.2构造函数
      • 2.1.3实例成员&静态成员
    • 2.2内置构造函数
      • 2.2.1Object
      • 2.2.2Array
      • 2.2.3String
      • 2.2.4Number
    • 2.3综合案例
  • 三.JavaScript进阶 第三天(深入面向对象)
    • 3.1编程思想
      • 3.1.1面向过程介绍
      • 3.1.2面向对象介绍OOP
    • 3.2构造函数
    • 3.3原型
      • 3.3.1原型
      • 3.3.2constructor 属性
      • 3.3.3对象原型
      • 3.3.4原型继承
      • 3.3.5原型链(面试)
    • 3.4综合案例
  • 四.JavaScript进阶 第四天(高阶技巧)
    • 4.1深浅拷贝
      • 4.1.1浅拷贝
      • 4.1.2深拷贝
    • 4.2异常处理
      • 4.2.1throw 抛异常
      • 4.2.2try /catch 捕获异常
      • 4.2.3debugger
    • 4.3处理this
      • 4.3.1this指向
        • 4.3.1.1this指向-普通函数
        • 4.3.1.2this指向-箭头函数
      • 4.3.2改变this
        • 4.3.2.1call() –了解
        • 4.3.2.2 apply()-理解
        • 4.3.2.3bind()-重点
        • 4.3.2.4call apply bind 总结
    • 4.4性能优化
      • 4.4.1防抖
      • 4.4.2节流
      • 4.4.3Lodash 库 实现节流和防抖
    • 4.5节流综合案例


一.JavaScript进阶 第一天(作用域&解构&箭头函数)

  1. 掌握作用域等概念加深对JS理解
  2. 学习ES6新特性让代码书写更加简洁便利

1.1作用域

目标:了解作用域对程序执行的影响及作用域链的查找机制,使用闭包函数创建隔离作用域避免全局变量污染。

  1. 作用域(scope)规定了变量能够被访问的“范围”,离开了这个“范围”变量便不能被访问,
  2. 作用域分为:
    局部作用域
    全局作用

1.1.1局部作用域

局部作用域分为函数作用域块作用域

1.1.1.1函数作用域:

在函数内部声明的变量只能在函数内部被访问,外部无法直接访问
小白JavaScript学习笔记----JavaScript 进阶_第1张图片
总结:

  1. 函数内部声明的变量,在函数外部无法被访问
  2. 函数的参数也是函数内部的局部变量
  3. 不同函数内部声明的变量无法互相访问
  4. 函数执行完毕后,函数内部的变量实际被清空了
1.1.1.2块作用域:

在 JavaScript 中使用 { } 包裹的代码称为代码块,代码块内部声明的变量外部将**【有可能】**无法被访问。
小白JavaScript学习笔记----JavaScript 进阶_第2张图片
总结:

  1. let 声明的变量会产生块作用域,var 不会产生块作用域
  2. const 声明的常量也会产生块作用域
  3. 不同代码块之间的变量无法互相访问
  4. 推荐使用 let 或 const

总结

  1. 局部作用域分为哪两种?
    函数作用域 函数内部
    块级作用域 {}
  2. 局部作用域声明的变量外部能使用吗?
    不能

1.1.2全局作用域

你可能感兴趣的:(Web前端学习笔记,javascript,学习,笔记)