什么是 block 函数?
在 JavaScript 中,并没有名为 “block 函数” 的独立函数类型。
但“block”通常指由一对花括号 {} 包裹的代码块(Block Statement),
它用于组合零条或多条语句。在 ES6 引入 let 和 const 后,
block 具备了块级作用域(Block Scope)的能力。
块级作用域示例
// 使用 let 声明的变量具有块级作用域
{
let x = 10;
console.log(x); // 输出: 10
}
console.log(x); // 报错: ReferenceError: x is not defined
与函数作用域的区别
使用 var 声明的变量属于函数作用域(或全局作用域),不受 block 限制:
{
var y = 20;
}
console.log(y); // 输出: 20(不会报错)
常见应用场景
- 控制结构:如
if、for、while中的代码块。 - 立即执行代码块:用
{}创建临时作用域避免变量污染。 - 配合 const/let 实现更安全的变量管理。