JavaScript 学习笔记(JS进阶 Day1)

「写在前面」

本文为 b 站黑马程序员 pink 老师 JavaScript 教程的学习笔记。本着自己学习、分享他人的态度,分享学习笔记,希望能对大家有所帮助。推荐先按顺序阅读往期内容:
1. JavaScript 学习笔记(Day1)
2. JavaScript 学习笔记(Day2)
3. JavaScript 学习笔记(Day3)
4. JavaScript 学习笔记(Day4)
5. JavaScript 学习笔记(Day5)
6. JavaScript 学习笔记(WEB APIs Day1)
7. JavaScript 学习笔记(WEB APIs Day2)
8. JavaScript 学习笔记(WEB APIs Day3)
9. JavaScript 学习笔记(WEB APIs Day4)
10. JavaScript 学习笔记(WEB APIs Day5)
11. JavaScript 学习笔记(WEB APIs Day6)


目录

  • 1 作用域
  • 2 函数进阶
  • 3 解构赋值
  • 4 综合案例

JavaScript进阶阶段安排:

P152:https://www.bilibili.com/video/BV1Y84y1L7Nn?p=152

1 作用域

1.1 局部作用域

P153:https://www.bilibili.com/video/BV1Y84y1L7Nn?p=153

  • 作用域(scope)规定了变量能够被访问的“范围”,离开了这个“范围”变量便不能被访问

  • 作用域分为:

    • 局部作用域
    • 全局作用域

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

1. 函数作用域:

在函数内部声明的变量只能在函数内部被访问,外部无法直接访问。

<script>
function getSum() {
// 函数内部是函数作用域属于局部变量
const num = 10
}
console.log(num) // 此处报错,函数外部不能使用局部作用域变量
script>

总结:

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

2. 块作用域:

在 JavaScript 中使用 { } 包裹的代码称为代码块,代码块内部声明的变量外部将【有可能】无法被访问。

for ( let t = 1; t<= 6; t++) {
// t 只能在该代码块中被访问
console.log(t) // 正常
}
// 超出了 t 的作用域
console.log(t) // 报错

总结:

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

1.2 全局作用域

你可能感兴趣的:(前端,javascript)