<script>
//第一种情况:没有手动添加返回值(没有return语句)
function P1(){
this.name="zhagnsan";
}
//默认返回P1的实例,f1:{name:"zhangsan"}
var f1=new P1();
//第二种情况:手动添加一个基本数据类型(数字、字符串、布尔值、null、undefined)的返回值,最终还是返回this
function P2(){
this.age=20;
return 100;
}
var f2=new P2();//f2指向P2的实例(this)-->f2:{age:20}
console.log(f2.age);//20
//第三种情况:手动添加一个复杂数据类型(对象)的返回值,最终返回该对象
function P3(){
this.gender="男";
return [1,3,5];
}
var f3=new P3();//f3->[1,3,5]
console.log(f3.length);//3
console.log(f3.gender);//不存在该属性,属性的值:undefined
function P4(){
this.length=5;
return {length:10};//返回一个对象类型
}
var f4=new P4();//f4:{length:10}
console.log(f4.length);//10
</script>