function Base(){
this.color='red';
return 'test';
}
var base=new Base();
alert(typeof base);//object
var base=Base();
alert(typeof base);//string
由以上可知,如果函数返回值是Number,String,Boolen这样的值类型,则通过new运算符可以返回一个该函数的实例化对象
object,
function Base(){
this.color='red';
return function(){
return true;
}
}
var base=Base();
alert(base); //function(){return true;}
var base=new Base();
alert(base); //function(){return true;}
this.color='red';
return 'test';
}
var base=new Base();
alert(typeof base);//object
var base=Base();
alert(typeof base);//string
由以上可知,如果函数返回值是Number,String,Boolen这样的值类型,则通过new运算符可以返回一个该函数的实例化对象
object,
function Base(){
this.color='red';
return function(){
return true;
}
}
var base=Base();
alert(base); //function(){return true;}
var base=new Base();
alert(base); //function(){return true;}
由上可知,如果函数返回的是Array,Function,Object这些,则使用new运算符和不使用new运算符得到的结果是一样的。
借鉴来源:http://blog.csdn.net/hy6688_/article/details/22453043