当前位置: 首页 > news >正文

作用域与作用域链深度解析

一、作用域(Scope)

1、基本定义
作用域是程序中变量和函数的可访问范围,它规定了在何处以及如何查找变量。JavaScript采用词法作用域(Lexical Scope),即作用域在代码编写阶段就已确定(而非运行时)。

2、作用域的类型
2-1 全局作用域(Global Scope)

  • 最外层作用域
  • 在浏览器中是window对象
  • 在Node.js中是global对象
  • 生命周期:页面关闭时销毁
var globalVar = "I'm global";  // 全局变量function globalFunc() {console.log("Global function");
}// 浏览器环境中
console.log(window.globalVar);  // "I'm global"
window.globalFunc();  // "Global function"

2-2 函数作用域(Function Scope)

  • 函数内部的作用域
  • 使用var声明的变量具有函数作用域
  • 生命周期:函数执行完毕时销毁
function myFunction() {var functionScoped = "I'm function scoped";if (true) {var stillAccessible = "Still accessible";}console.log(stillAccessible); // "Still accessible" 
}myFunction();
console.log(functionScoped); // ReferenceError: functionScoped is not defined

2-3 块级作用域(Block Scope)(ES6+)

  • {} 包围的代码块形成的作用域
  • 使用letconst声明的变量具有块级作用域
  • 生命周期:块执行完毕时销毁
{let blockScoped = "I'm block scoped";const alsoBlockScoped = "Me too!";
}console.log(blockScoped); // ReferenceError
console.log(alsoBlockScoped); // ReferenceErrorif (true) {let conditionVar = "Inside if block";console.log(conditionVar); // "Inside if block"
}
console.log(conditionVar); // ReferenceErrorfor (let i = 0; i &l
http://www.dtcms.com/a/325542.html

相关文章:

  • 复杂提示词配置文件
  • wpf问题记录
  • 重学React(五):脱围机制一
  • 关于JavaScript 性能优化的实战指南
  • React 19 通用 ECharts 组件
  • 【牛客刷题】REAL809 转化
  • GPT-5越狱与零点击AI代理攻击:云与IoT系统面临新型威胁
  • 龙虎榜——20250811
  • HTTPS的应用层协议
  • 数据类型 hash
  • 浏览器CEFSharp+X86+win7 之 测试抖音小店订单抓取(八)
  • 秋天落叶可视化
  • 【BFS 树状数组】P9026 [CCC 2021 S4] Daily Commute|普及+
  • DCA1000使用网线采集数据时的注意事项
  • 用于水T1值和脂肪分数量化的上半身自由呼吸磁共振指纹成像|文献速递-医学影像算法文献分享
  • 【软考中级网络工程师】知识点之 TCP 协议深度剖析
  • JavaEE初阶2.0
  • Linux Web服务器与WordPress部署笔记
  • Linux文件描述符相关知识
  • 一周学会Matplotlib3 Python 数据可视化-绘制直方图(Histogram)
  • Linux-常用命令
  • Windows文件时间修改指南:从手动到自动化
  • 10种经典学习方法的指令化应用
  • 【lucene】文档id docid
  • 在CentOS 7上将PostgreSQL数据库从默认路径迁移到自定义目录
  • Qwen-Image:通义团队新开源超强中文文生图模型(技术报告解读)
  • 【C++】哈希表的实现(unordered_map和unordered_set的底层)
  • 药用植物甾体皂苷生物合成途径研究进展--文献精读158
  • fwrite fread与流定位相关接口
  • CoreShop商城框架开启多租户(1)