欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

javascript从入门到跑路-----小文的js学习笔记(19)------- js的垃圾回收机制

程序员文章站 2022-07-10 21:36:15
一、JS垃圾回收机制1》标记清除最常用的一种垃圾回收机制2》引用计数最不常用一种垃圾回收机制3》手动清除把不用的变量或者对象或者函数===》(赋值为)= null...

**
javascript从入门到跑路-----小文的js学习笔记(1)---------script、alert、document。write() 和 console.log 标签

javascript从入门到跑路-----小文的js学习笔记(2)--------- 语法构成、关键字和保留字、变量

javascript从入门到跑路-----小文的js学习笔记(3)---------javascript中的几种数据类型


javascript从入门到跑路-----小文的js学习笔记目录
**

       关注小文我们一起学习进步。

JS垃圾回收机制

      js的垃圾回收机制 系统的一共有两种

1、标记清除

        标记清除是我们js中最普遍的垃圾回收方式,当我们在函数中声明一个变量,那么这个变量就会进入执行环境,系统对其进行标记“进入环境”,一旦当我们函数执行结束之后,变量就会离开,系统对其标记为“离开环境”。而这个标记离开环境的变量,系统就对其进行回收了。

简单举个栗子:我们创建一个函数

	function fn(){
				
				var a = "小绿" //这里声明了变量,即“进入环境”
				alert(a)
			}
			
			fn();//函数执行结束,即“离开环境” 被回收

当下高版本的浏览器基本都是用的 标记清除 机制,但是以前的老版本也有用到我们下面的 一个回收机制-----引用计数。

         注意:光理论是不够的 ,在此送大家2020最新企业级 Vue3.0/Js/ES6/TS/React/node等实战视频教程,点击此处免费获取,小白勿进哦

2、引用计数

        引用计数是 根据变量被引用的次数来算的,没被引用一次,次数加一,然后下方每没有引用一次,次数减一,直到次数为零,则将其回收。

  		function fn(a){
				
				var b= a;//a被引用一次,次数 +1; 为1
				var c = a;//又被引用一次,次数+1; 为2
				//为引用,次数-1;为1
				//为引用,次数-1;为0,然后进行回收
			}
			
			fn(175);

当然了除了前面js自动回收的两种外,还有下面一种-----我们手动回收

3、手动清除

       手动清除,顾名思义就是,当我们的某个变量不再需要使用的时候,手动将其赋值为null,对其进行清除 。

示例:
javascript从入门到跑路-----小文的js学习笔记(19)------- js的垃圾回收机制
执行结果:很显然会弹出两个“小蓝”,

但是我们只需要第一个小蓝,第二个不需要弹出小蓝,那么我们手动对其进行清除
javascript从入门到跑路-----小文的js学习笔记(19)------- js的垃圾回收机制
将其赋值为null,那么很显然,执行结果为:
javascript从入门到跑路-----小文的js学习笔记(19)------- js的垃圾回收机制javascript从入门到跑路-----小文的js学习笔记(19)------- js的垃圾回收机制

本文地址:https://blog.csdn.net/qq_45948983/article/details/107395200