概述
先看一段代码,
function Foo(name,age){ this.name=name; this.age=age; } var foo=new Foo("Tom",14); foo.name;//Tom foo.age;//14
使用构造函数实例化发生的流程:
1.建立一个foo的空对象。
2.将构造函数中的Foo的this指向对象foo。
3.foo的_proto_属性指向Foo函数的prototype原型。
4.执行构造函数中的代码。
相对于普通函数,构造函数中的this是指向实例的,而普通函数调用中的this是指向windows的。
构造函数中如果加入了return的话,分两种情况
function Foo(name,age){ this.name=name; this.age=age; return {name:"Jeff"} } var foo=new Foo("Tom",14); foo.name;//Jeff
1.return的是五种简单数据类型:String,Number,Boolean,Null,Undefined。
这种情况下,忽视return值,依然返回this对象。
2.return的是Object。
这种情况下,不再返回this对象,而是返回return语句的返回值。
总结
以上所述是小编给大家介绍的JS构造函数中this和return,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言小编会及时回复大家的!
最后
以上就是欢喜犀牛为你收集整理的详解JS构造函数中this和return的全部内容,希望文章能够帮你解决详解JS构造函数中this和return所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复