<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
// 做用域链
// 每个函数都有一个做用域, 若是一个函数内部又嵌套链另一个函数,
// 嵌套的函数也会又一个做用域,这样,嵌套函数就能访问到外部函数中的变量,
// 以及全局做用域中的变量,此时就造成了一条做用域链
// (包括:自身的做用域, 以及外部函数的做用域, 以及全局做用域)javascript
// 全局做用域: script标签包裹的内容就是一个做用域
var abc = 123;html
// fn 中能访问到的变量由那些:
// 1 自身定义的变量
// 2 上一级做用域中的变量(全局做用域)java
// foo 中能访问到的变量由那些:
// 1 自身定义的变量
// 2 函数fn中的变量
// 3 全局做用域中的变量
function fn() {
var a = 456;函数
function foo() {
var num = 123;htm
// f的做用域链: f做用域 -> foo做用域 -> fn做用域 -> 全局做用域
function f() {}
}
foo();
// console.log(num);
}
</script>
</body>
</html>ip