位置: 编程技术 - 正文

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 模态对话框和对话框)

  • 城建税和教育费附加怎么写分录
  • 个体工商户月销售额超10万怎么报税
  • 平台收取的佣金开具什么发票
  • 银行转账支付凭证有效期多久
  • 增值税申报表与财务报表不一致
  • 加盟费是怎么回事
  • 其他综合收益影响所有者权益吗
  • 网银年费怎么做会计分录的
  • 上级拨付的固定资产增加类型是什么
  • 出口预收货款发生的时间和报表上的时间不一样怎么办
  • 企业将存货低价出售处理要如何做会计处理?
  • 产品因质量问题造成损害的,应当承担责任的主体是
  • 电子商业承兑汇票
  • 股东出资不做股本做借款该怎么写分录?
  • 完全发生在境外的服务增值税
  • 建筑企业在增值税方面新出台的政策
  • 预收款项什么时候确认收入
  • 餐饮行业月营业额怎么算
  • 盈余公积什么时候调整
  • 股权转让交的印花税怎么做会计分录
  • 企业所得税税率2022年最新税率表
  • 1697508019
  • 一般纳税人资格证明在哪里开具
  • 印花税查账征收和核定征收计算
  • 营改增项目
  • 非税收入票据如何打印
  • 一般纳税人建筑服务税率是多少
  • 绿宝树的养殖方法和注意事项视频
  • linux命令top作用
  • 赡养人 被赡养人
  • gnu/linux
  • 员工出差火车票可以抵扣进项吗
  • 财务变更是什么意思
  • 工程款包工包料怎么开票
  • 商品房契税申报是增量房申报吗
  • 个人借款的合法利息是多少
  • 计提坏账准备的方法有哪些
  • 海带下载
  • 2023年顶会、顶刊SNN相关论文----------持续更新中
  • MMEngine理解
  • vi命令模式下的常用命令有哪些?
  • 如何根据营业执照核定税种
  • 个税申报需要什么资料
  • ecs怎么用
  • Sqlite 操作类代码
  • python有public
  • 坏账准备在资产负债表哪里体现
  • 公司报销金额有限制吗
  • 预收工程款的会计分录
  • 专项应付款的核算
  • 防暑降温费计入工资还是福利费
  • 期末调汇的会计怎么做账
  • 买房定金转给销售有效吗
  • 应收票据背书转让分录
  • 互联网企业招商手册
  • 货款和发票金额一样吗
  • 倒卖承兑汇票被判刑
  • 建账时应考虑的问题包括下列哪三项
  • win7 64位运行软件提示MSCOMCTL.OCX丢失或无效该怎么办?
  • linux中mail命令
  • 如何禁用mac内置键盘
  • 硬盘分区win7怎么扩充c盘
  • 苹果mac系统怎么安装pip工具
  • powershow是什么意思
  • 禁用远程桌面服务登录
  • 升级win10后东西还在吗
  • win7系统无法删除打印机驱动
  • perl @inc
  • js中创建对象的几种方法
  • node.js怎么创建js文件
  • unity socket udp
  • java分布式计算
  • Protocol Buffers(Protobuf)开发者指南---概览
  • java script教程
  • 国税地税征管体制改革方案
  • 地税注销流程
  • 重庆电子税务局怎么绑定办税人员
  • 廉政谈话什么是廉政?
  • 个体商户营业额多少万以下免税
  • 个人所得税的工资比实际的多
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设