JavaScript 函数与作用域是理解JavaScript工作原理的关键部分。以下是关于函数作用域的简要概述。
函数作用域
在JavaScript中,变量有两种作用域:全局作用域和局部作用域。
全局作用域
- 定义在函数外部,在任何地方都可以访问。
- 作用域贯穿整个脚本。
- 示例代码:
var a = 10;
console.log(a); // 输出 10
局部作用域
- 定义在函数内部,只能在函数内部访问。
- 作用域限制在函数内部。
- 示例代码:
function myFunction() {
var b = 20;
console.log(b); // 输出 20
// b 在这里无法访问
}
myFunction();
闭包
闭包是一个函数和其词法环境(lexical environment)的引用绑定的组合。
- 闭包允许函数访问定义在创建它的作用域中的变量。
- 示例代码:
function createCounter() {
var count = 0;
return function() {
return count++;
}
}
var counter = createCounter();
console.log(counter()); // 输出 0
console.log(counter()); // 输出 1
JavaScript函数闭包示例
更多关于JavaScript函数和作用域的内容,可以访问我们的JavaScript教程页面。