`
weigang.gao
  • 浏览: 467436 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

note(1)

 
阅读更多

构造函数在不返回值的情况下,默认会返回新对象实例。而通过构造函数的末尾添加一个return语句,可以重写调用构造函数时的返回值

情况1:函数中有return语句,弹出name ,age

script type="text/javascript"> 
	  function Person(name, age, job){
	    var sex= 'M';  //name只是一个局部变量
		var person = new Object();
		person.name = '高伟刚';
		person.age = 23;
		/*构造函数在不返回值的情况下,默认会返回新对象实例。而通过构造函数的末尾添加一个return语句,可以重写调用构造函数时的返回值*/
		return person;
	  }
	  //1.创建一个新对象
	  //2.将构造函数的作用域赋给新对象(因此this就指向这个新对象)
	  //3.执行构造函数中的代码为这个新对象添加属性
	  //4.返回新对象
	  var person1 = new Person();
	  for(var prop in person1){
	    alert(prop); //name, age
	  }
	</script>

 

 

情况2:函数中没有return语句

 

<script type="text/javascript"> 
	  function Person(name, age, job){
	    var sex = 'M';  //name只是一个局部变量,如果要使sex成为全局变量,可以省略var
		this.job = 'Software Engineer';
		var person = new Object();
		person.name = '高伟刚';
		person.age = 23;
		/*构造函数在不返回值的情况下,默认会返回新对象实例。而通过构造函数的末尾添加一个return语句,
		  可以重写调用构造函数时的返回值*/
		//return person;
	  }
	  //1.创建一个新对象
	  //2.将构造函数的作用域赋给新对象(因此this就指向这个新对象)
	  //3.执行构造函数中的代码为这个新对象添加属性
	  //4.返回新对象
	  var person1 = new Person();
	  for(var prop in person1){
	    alert(prop); //job
	  }
	</script>

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics