函数指针this和垃圾回收(GC)
函数指针this
解析器在调用函数每次都会向函数内部传递进一个隐含的参数,
这个隐含的参数就是this,this指向的是一个对象,
这个对象我们称为函数执行的上下文对象,
根据函数的调用方式的不同,this会指向不同的对象
1.以函数的形式调用时,this永远都是window
2.以方法的形式调用时,this就是调用方法的那个对象(谁调用指向谁)
var name = "全局";
function fun(){
console.log(this.name);
//console.log(name);后面无论怎么调用都只会出现“全局”
//console.log(obj1.name);不够灵活
}
var obj1 = {
name:"abc",
sayName:fun
};
var obj2 = {
name:"efg",
sayName:fun
};
obj1.sayName();
垃圾回收(GC)
程序运行过程中会产生垃圾,导致程序运行变慢。
所以我们需要一个垃圾回收的机制,来处理程序运行过程中产生垃圾
-
当一个对象没有任何的变量或属性对它进行引用,此时我们将永远无法操作该对象,
此时这种对象就是一个垃圾, 这种对象过多会占用大量的内存空间,导致程序运行变慢 -
在JS中拥有自动的垃圾回收机制,会自动将这些垃圾对象从内存中销毁,
我们不需要也不能进行垃圾回收的操作 -
我们需要做的只是要将不再使用的对象设置null即可