add:垃圾回收机制
This commit is contained in:
parent
fd9669c9f1
commit
54d3e5b676
@ -135,3 +135,12 @@ arguments里边有一个属性叫做callee,这个属性对应一个函数对
|
|||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## 我的公众号
|
||||||
|
|
||||||
|
想学习<font color=#0000ff>**代码之外的技能**</font>?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
|
||||||
|
|
||||||
|
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
|
||||||
|
|
||||||
|
![](http://img.smyhvae.com/2016040102.jpg)
|
||||||
|
|
||||||
|
|
||||||
|
@ -251,3 +251,12 @@ json 采用 `for...in...`进行遍历,和数组的遍历方式不同。如下
|
|||||||
|
|
||||||
![](http://img.smyhvae.com/20180203_1518.png)
|
![](http://img.smyhvae.com/20180203_1518.png)
|
||||||
|
|
||||||
|
|
||||||
|
## 我的公众号
|
||||||
|
|
||||||
|
想学习<font color=#0000ff>**代码之外的技能**</font>?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
|
||||||
|
|
||||||
|
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
|
||||||
|
|
||||||
|
![](http://img.smyhvae.com/2016040102.jpg)
|
||||||
|
|
||||||
|
@ -155,29 +155,29 @@ per1 = [object Object]
|
|||||||
|
|
||||||
//方式一:重写 Person 原型的toString方法。针对 Person 的所有实例生效
|
//方式一:重写 Person 原型的toString方法。针对 Person 的所有实例生效
|
||||||
Person.prototype.toString = function() {
|
Person.prototype.toString = function() {
|
||||||
return (
|
return (
|
||||||
"Person[name=" +
|
"Person[name=" +
|
||||||
this.name +
|
this.name +
|
||||||
",age=" +
|
",age=" +
|
||||||
this.age +
|
this.age +
|
||||||
",gender=" +
|
",gender=" +
|
||||||
this.gender +
|
this.gender +
|
||||||
"]"
|
"]"
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
// 方式二:仅重写实例 per1 的 toString方法。但是这种写法,只对 per1 生效, 对 per2 无效
|
// 方式二:仅重写实例 per1 的 toString方法。但是这种写法,只对 per1 生效, 对 per2 无效
|
||||||
/*
|
/*
|
||||||
per1.toString = function() {
|
per1.toString = function() {
|
||||||
return (
|
return (
|
||||||
"Person[name=" +
|
"Person[name=" +
|
||||||
this.name +
|
this.name +
|
||||||
",age=" +
|
",age=" +
|
||||||
this.age +
|
this.age +
|
||||||
",gender=" +
|
",gender=" +
|
||||||
this.gender +
|
this.gender +
|
||||||
"]"
|
"]"
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -202,3 +202,22 @@ per2 = Person[name=vae,age=30,gender=男]
|
|||||||
|
|
||||||
从这个例子,我们可以看出 `prototype` 的作用。
|
从这个例子,我们可以看出 `prototype` 的作用。
|
||||||
|
|
||||||
|
## JS的垃圾回收(GC)机制
|
||||||
|
|
||||||
|
程序运行过程中会产生垃圾,这些垃圾积攒过多以后,会导致程序运行的速度过慢。所以我们需要一个垃圾回收的机制,来处理程序运行过程中产生垃圾。
|
||||||
|
|
||||||
|
当一个对象没有任何的变量或属性对它进行引用时,此时我们将永远无法操作该对象,此时这种对象就是一个垃圾,这种对象过多会占用大量的内存空间,导致程序运行变慢,所以这种垃圾必须进行清理。
|
||||||
|
|
||||||
|
上面这句话,也可以这样理解:如果堆内存中的对象,没有任何变量指向它时,这个堆内存里的对象就会成为垃圾。
|
||||||
|
|
||||||
|
JS拥有自动的垃圾回收机制,会自动将这些垃圾对象从内存中销毁。我们不需要也不能进行垃圾回收的操作。我们仅仅需要做的是:如果你不再使用该对象,那么,将改对象的引用设置为 null 即可。
|
||||||
|
|
||||||
|
|
||||||
|
## 我的公众号
|
||||||
|
|
||||||
|
想学习<font color=#0000ff>**代码之外的技能**</font>?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
|
||||||
|
|
||||||
|
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
|
||||||
|
|
||||||
|
![](http://img.smyhvae.com/2016040102.jpg)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user