位置: 编程技术 - 正文

js作用域及作用域链概念理解及使用(js有哪些作用域,分别是什么意思)

编辑:rootadmin

要理解变量的作用域范围就得先理解作用域链 用var关键字声明一个变量时,就是为该变量所在的对象添加了一个属性。 作用域链:由于js的变量都是对象的属性,而该对象可能又是其它对象的属性,而所有的对象都是window对象的属性,所以这些对象的关系可以看作是一条链 链头就是变量所处的对象,链尾就是window对象 看下面的代码: js中函数也是对象,所以变量a所在的对象是t,t又在window对象中,所以a的作用域链如下 t--window 那么b所以在的对象即t2,t2又包含在t中,t又在window对象,所以b的作用域链如下 t2--t--window 明白了作用域链下面就开始变量的作用域分析了 1 javascript 没有var的变量都为全局变量,且为window对象的属性 2 函数内(函数内的函数除外)定义的变量在整个函数内部都有效 3 函数内部的变量取代全局同名变量 4 没块的作用域 以下内容来自读网上博客的总结,当笔记使用,只记重点,同时非常感谢乐于分享的博主们,是你们让我站在了巨人的肩旁上! 1、 以上代码片断是我们jser经常见到的写法,是传说中的闭包。 众所周知:调用 temp();会弹出 “ test”;该过程可以有以下三条理论作为依据来解释: 1)js 作用域只和函数的界定符相关,函数与函数的嵌套形成了作用域链; 2)作用域链的创建规则是复制上一层环境的作用域链,并将指向本环境变量对象的指针放到链首; 3)在Javascript中,如果一个对象不再被引用,那么这个对象就会被GC回收。如果两个对象互相引用,而不再被第3者所引用,那么这两个互相引用的对象也会被回收。 如果看了以上3条还不明白,可看接下来结合理论对代码的详细解释: 首先外层函数执行完,被销毁;但是外层函数的作用域链被复制到内层函数的作用域链里,组成内层函数的作用域链的一部分,记住是复制,不是引用(依据第2条),所以内层函数仍然可以访问到 name;由于 返回的内层函数被 temp 引用,所以当外层函数执行完被销毁后,内层函数虽然作为外层函数的一部分,但是依然存在,正如第3条依据那样,它被第三者引用了;传说中的闭包也就是这个理

推荐整理分享js作用域及作用域链概念理解及使用(js有哪些作用域,分别是什么意思),希望有所帮助,仅作参考,欢迎阅读内容。

js作用域及作用域链概念理解及使用(js有哪些作用域,分别是什么意思)

文章相关热门搜索词:js作用域有哪些,js作用域作用优点缺点,js作用域及作用域的区别,js作用域作用优点缺点,js的作用域和作用域链,js的作用域和作用域链,js作用域及作用域的区别,js作用域及作用域的区别,内容如对您有帮助,希望把文章链接给更多的朋友!

JS 模态对话框和非模态对话框操作技巧汇总 模态窗口javascript技巧汇总(传值、打开、刷新)1、要弹出的页面中,一定要保证head/head标签间有basetarget=_self,否则会弹出的模态窗口上,点击按钮时

JS中 用户登录系统的解决办法 当用户输入pwd密码是就跳到第二个页面,4秒后,自动跳转到第三个页面login.htmlhtmlheadmetahttp-equiv="Content-Type"content="text/html;charset=utf-8"scripttype="text/javasc

简易js代码实现计算器操作 htmlheadtitleJS版计算器/titlelinkrel="stylesheet"type="text/css"href=""metahttp-equiv="content-type"content="text/html;charset=utf-8"!--js代码可以放置在任意位置,按照先后顺序依

标签: js有哪些作用域,分别是什么意思

本文链接地址:https://www.jiuchutong.com/biancheng/377674.html 转载请保留说明!

上一篇:在Javascript中 声明时用"var"与不用"var"的区别(在JavaScript中声明变量的关键词有)

下一篇:JS 模态对话框和非模态对话框操作技巧汇总(js 模态对话框和对话框)

  • 纳税怎么理解
  • 劳务派遣公司需要给员工缴纳社保吗
  • 物业公司增值税加计扣除
  • 息税前利润计算每股收益
  • 建筑公司购入的水泥等材料如果是做成本的怎么做分录
  • 小规模季度开票超过30怎么纳税
  • 增值税减免所得税填在哪一栏
  • 发票抬头公司名称有空格
  • 买车装具
  • 财报一季度
  • 网络服务费属于什么费用
  • 重型开输机属于固定资产什么类别
  • 承兑汇票给别人时对方需要出具什么
  • 会计期末要做的事情
  • 转出未交增值税和转出多交增值税
  • 计提坏账准备和冲减坏账准备
  • 预付货款工程完工后如何结转?
  • 资质招投标
  • 融资租赁资产如何入账
  • 劳务派遣公司如何缴纳残疾人保障金
  • 固定健身器械使用方法
  • 红字发票不小心点了暂存怎么办
  • 购设备发票只开来一部分怎么入账?
  • 食堂费用没有发票能挂账吗
  • 租赁的厂房改造可以费用化吗
  • 公司购买五金用交税吗
  • 商业健康保险税优码
  • 净资产有哪些科目
  • 事业单位财务预算管理制度
  • 期末调汇的会计处理
  • 印花税计税依据及计算方式
  • 计算机存储信息的基本单位是( )A字长B速度C内存D字节
  • 个人承包建筑工程转让协议
  • .exe是什么文件
  • 没有认缴的股东算是股东?
  • kwhcommonpop.exe是什么程序
  • 房产开发企业涉及税种
  • 提取的盈余公积是所有者权益吗
  • 销售折让双方会计分录
  • 企业收到政府奖励会计分录
  • framework教程
  • php实现登录功能
  • 下列项目的进项税额可从销项税
  • thinkphp项目怎么部署
  • ChatGPT全面升级,GPT4支持多模态数据。
  • 写一个简单的php程序代码
  • 标书注意事项与如何制作标书
  • 个人对公付款
  • python字典操作 遍历
  • 违约拒绝赔偿怎么办
  • 红字发票是可以抵扣吗
  • 资产负债表日后事项是指资产负债表日之后至审计报告
  • SQL查询数据库中表的某一列
  • 设备出租当月要确认收入吗
  • 其他权益工具账面价值和公允价值
  • 未付货款尾款会计分录
  • 实收资本印花税最新规定
  • 外贸企业退税政策
  • 破产重整期间转让股权
  • 固定资产多少钱入账
  • sql中的视图提高了数据库的
  • 用命令创建文件夹
  • ie11安装方法
  • linux route -n命令结果详解
  • win10微软在哪
  • win8系统特点
  • 电脑开启虚拟wifi
  • javascript编程技术
  • linux tcptraceroute
  • unity3d初学者教程视频
  • jquery 下拉框变更事件
  • 简单实现异步编码的方法
  • [置顶]bilinovel
  • unity协程的工作原理
  • python字符串的用法
  • 中山市十大纳税大户
  • 河南省地方税务局房产税管理办法
  • 税务如何稽查
  • 税务局风险管理股工作总结
  • 第二税务所干什么的
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设