位置: 编程技术 - 正文

理解js回收机制通俗易懂版(java回收机制原理)

编辑:rootadmin

推荐整理分享理解js回收机制通俗易懂版(java回收机制原理),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js的垃圾回收,理解js回收机制的方法,js变量回收机制,js变量回收机制,js回收机制怎么回收的,js 回收机制,js 回收机制,js 回收机制,内容如对您有帮助,希望把文章链接给更多的朋友!

之前文章中,讲解过js中的回收机制,但是对于当时的我来说,我自己对回收机制的这个概念也有些懵懵懂懂,现在对回收机制有了更深入的理解,所以特此发布此文给于总结,也好加深记忆。为什么要有回收机制?why?

打个比方,我有一个内存卡,这个内存是8G的,我把文件,视频,音乐,都保存到了这个内存卡,随着我的储存的内容越来越多,这个内存卡已经保存不了了,如果我还想再把其他的文件保存到这个内存卡就需要删除一些文件,但是这些被删除的文件是我们自己手动删除的对吧,手动删除就相当于js中的delete。

在这些程序语言中同样也会出现这些问题,对,内存!我们声明的任何变量都需要消耗内存,这些变量越多运行的速度也会越慢。当然不只是变量,代码中的任何东西。这些语言的设计者为了解决这些问题,设计了一套代码的回收规则。

代码回收规则如下:

    1.全局变量不会被回收。

理解js回收机制通俗易懂版(java回收机制原理)

    2.局部变量会被回收,也就是函数一旦运行完以后,函数内部的东西都会被销毁。

    3.只要被另外一个作用域所引用就不会被回收

我用几个例子来证明这些。

  按理说我是不能访问函数a里面的变量的,但是我通过全局变量b接收了这个函数a return过后的值,于是最后这段代码就成了下面这样。

好像这并看不出什么代码回收,那么我们看接下来的一段代码。

  看到了吧,如果按照正常的做法,那么输出的应该是3次1次对,因为函数体一旦运行那么这个函数体内的代码就会被清空,既然会被清空那么下次运行这段代码的时候num应该还是1,但是这里情况有些不同,我上面说过函数中的局部变量只要被另外一个作用域所引用那么这段代码就不会被销毁。

  上面的代码就像这样

那么被函数a返回的那个匿名函数的作用域由函数a转向了window,由于这个匿名函数被全局变量b引用所以不会被销毁。

同样可以,因为匿名函数被对象b的属性fn引用,改变了它的作用域,简单来说只要一个函数或者局部变量被改变作用域那么这个函数或者局部变量就不会被销毁。

标签: java回收机制原理

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

上一篇:基于Javascript实现返回顶部按钮(用javascript)

下一篇:JavaScript实现点击按钮字体放大、缩小(js的点击事件怎么做)

  • 房地产开发企业资质等级有几个
  • 计提印花税会计分录
  • 网上报税怎么报啊
  • 待转销项税额是几级科目
  • 公司户和个人户卖车的时候价格差多少
  • 增值税发票9个点和13个点区别
  • 预交所得税利润表怎么填
  • 已付的账款叫什么
  • 印花税减半征收优惠政策2022
  • 资产负债表各项目的填列依据是
  • 合并业务的好处
  • 奖品偶然所得个税如何申报
  • 期初余额什么时候在借方什么时候在贷方
  • 费用一定计入当期损益吗
  • 金税盘最高限额怎么修改
  • 企业缴印花税分录
  • 房地产母公司将其土地变更到其全资子公司
  • 税收分类编码选错了有事吗
  • 水电费没有发票怎么报销
  • 吊车费计什么科目
  • 某产品今年进价是去年的
  • 员工差旅补贴是否需要发票
  • 以前年度损益调整编码
  • 跨期费用会计处理
  • 债券回购的含义和种类
  • 工程款中包含增值税怎么处理
  • 法人变更股权不转让有什么影响么么
  • 公司的固定资产是什么
  • redhat5.6安装
  • 什么是BIOS设置界面
  • php经典教程
  • 电脑开不了机一直重启
  • 小规模纳税人怎么申报增值税报表
  • php完整教程
  • 房产税去哪交税
  • 会计政策变更常见例子
  • 企业进项税大于销项税财务怎么做分录
  • laravel 5.3中自定义加密服务的方案详解
  • 异地提供建筑服务预缴企业所得税
  • elasticsearch基本概念
  • 差旅费的进项税额需要转出吗
  • 房地产销售折扣
  • 印花税契税入固定资产吗
  • 年终奖税金怎么扣
  • mysql的查询缓存与redis的区别
  • 电子发票的优点好处
  • 月收入一万该怎么说
  • 税控盘开票机号在哪里能查到
  • 小规模当月开普票作废流程
  • 购进运输服务取得的成果
  • 个人餐饮费发票
  • 应付职工薪酬的二级科目都有哪些
  • 以前年度损益调整是什么意思
  • 销售货物没有开票的会计分录
  • 建筑企业的安全技术措施
  • 结转税金需要附件吗
  • 还银行贷款如何计算利息
  • 文化传媒公司的主营业务
  • 医院收费票据可以入账吗
  • 销售货物的流程
  • 收到所得税退税的账务处理
  • 销项发票怎么导出的是压缩包怎么打开
  • 商品进销差价的作用
  • 发票金额大于付款金额可以报销吗
  • 会计成本核算方法有几种类型
  • ddl dml的区别
  • mysql查询语句优先级
  • sqlserver中存储过程
  • 苹果mac系统怎么截屏快捷键
  • Windows tips小技巧
  • 删除xp本地保存的视频
  • 虚拟机安装centos7.9
  • window10自动开机怎么回事
  • unity4.5.3f3 和 Android的通信
  • JavaScript驾驭网页-获取网页元素
  • jquery图片轮播视频
  • androids翻译
  • putty自动退出
  • python调用python脚本
  • ca用户绑定怎么绑
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设