05.作用域链.html 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <title>Document</title>
  8. </head>
  9. <body>
  10. <!--
  11. 1、理解
  12. *多个上下级关系的作用域形成的链,它的方向是从下向上的(从内到外)
  13. *查找变量时就是沿着作用域链来查找的
  14. 2、一个变量的查找规则
  15. *在当前作用域下的执行上下文中查找对应的属性,如果有直接返回,否则进入2
  16. *在上一级作用域的执行上下文中查找对应的属性,如果有直接返回,否则进入3
  17. *再次执行2的相同操作,直到全局作用域,如果还找不到就抛出找不到的异常
  18. -->
  19. <script>
  20. var a = 1
  21. function fn1() {
  22. var b = 2
  23. function fn2() {
  24. var c = 3
  25. console.log(a)
  26. console.log(b)
  27. console.log(c)
  28. console.log(d)
  29. }
  30. fn2()
  31. }
  32. fn1()
  33. </script>
  34. </body>
  35. </html>