请看代码:
【1:】
var obj=function()
{
var MyFunc=function()
{
alert("hello world");
}
return function()
{
return MyFunc();
}
}
var f3=obj();
var f4=obj();
alert(f3.toString()===f4.toString());//true
【2:】
var obj=function()
{
var MyFunc=function()
{
alert("hello world");
}
return function()
{
return MyFunc();
}
}
var f3=obj();
var f4=obj();
alert(f3==f4);//false(连等于都为false,严格等于更为false)
【3:】
var obj=function()
{
var MyFunc=function()
{
alert("hello world");
}
return function()
{
return MyFunc();
}
}()
var f3=obj;
var f4=obj;
alert(f3===f4);//true
请问各位大牛,怎么解释?
本文通过三个示例深入探讨了JavaScript中闭包的特性,特别是通过比较不同情况下生成的函数实例来解释闭包的工作原理及其内存引用行为。

被折叠的 条评论
为什么被折叠?



