js构造函数内存在的闭包

Posted WIN

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js构造函数内存在的闭包相关的知识,希望对你有一定的参考价值。

function Func(x) {
this.x = x;
this.print=function() {
console.info(this.x);
(function (){
console.info(x);
})();
}
}
var a = new Func(30);
console.dir(a);
a.age = 300;
console.dir(a.print());//300,30
//存在于构造函数内的闭包 age:30 发生了闭包
//this.print 内存在闭包,闭包发生在构造new的时候,函数构造后内存销毁了,但是属性存在了.

以上是关于js构造函数内存在的闭包的主要内容,如果未能解决你的问题,请参考以下文章

1--面试总结-js深入理解,对象,原型链,构造函数,执行上下文堆栈,执行上下文,变量对象,活动对象,作用域链,闭包,This

什么是闭包(closure),为什么要用它?

JS面试题(进阶)——原型链、this指向、闭包

理解js中的Error

了解 Lambda 闭包类型如何删除默认构造函数

使用 Function() 构造函数作为闭包