当前位置: 代码迷 >> JavaScript >> 为何不同结果,该怎么处理
  详细解决方案

为何不同结果,该怎么处理

热度:123   发布时间:2012-03-08 13:30:13.0
为何不同结果
function A( ){
var a=10;
var b=20;
function B( ){
this.f=a;
}
return B;
}
var tt=A( );
var qq=new tt( );
alert(qq.f);
==========================================

function A( ){
var a=10;
var b=20;
function B( ){
this.f=a;
}
return B;
}
var qq=new A( )( );
alert(qq.f);

为什么上面的可以,下面的不可以,我总感觉等价。。。。


------解决方案--------------------
JScript code

function A( ){
var a=10;
var b=20;
function B( ){
this.f=a;
}
return B;
}
var tt=A( );==>tt=function(){this.f=10}
var qq=new tt( );==>qq.f=10
alert(qq.f);


function A( ){
var a=10;
var b=20;
function B( ){
this.f=a;
}
return B;
}
var qq=new A( )( );==>var test=new A();qq=test();
alert(qq.f); 
  相关解决方案