constructor中能不能有返回值?

可以有返回值。

如果返回的是基本类型,则没有影响;

如果返回的是对象,则该对象将会覆盖constructor返回的对象实例。

举例:

//遍历对象属性和方法
var iterate=function(obj){
var res="";
for(var item in obj){
res +=""+item+":"+obj[item]+" ";
}
return res;
}


//测试的constructor
function Test(){
this.gender="male";
//return "hello"
return {gender:"female"}
}
//test
var t =new Test();
alert(iterate(t));

 

posted @ 2012-09-14 09:15  GarrettZhu  阅读(256)  评论(0编辑  收藏  举报