构造函数中返回一个对象对结果有什么影响

Posted 点点乐淘淘

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了构造函数中返回一个对象对结果有什么影响相关的知识,希望对你有一定的参考价值。

var Func = function(){
      return {}
}
Func.prototype.show = function(){
     console.log("this is func show");
}
var Fun = function(){
}
Fun.prototype.show = function(){
    console.log("this is fun show");
}
var f1 = new Func();
var f2 = new Fun();

请问f1和f2有什么不同?

f1只是一个普通的对象,无法拿到Func原型上的任何东西

f2则是一个拥有完整继承关系的对象,可以拿到Fun原型上的所有东西

这是因为:

“显式的 return 表达式将会影响返回结果,但仅限于返回的是一个对象。”

参考网址:http://bonsaiden.github.io/javascript-Garden/zh/

 

谷歌真心不错,百度搜出来的都是些陈词滥调

以上是关于构造函数中返回一个对象对结果有什么影响的主要内容,如果未能解决你的问题,请参考以下文章

使用上页幻灯片中定义的类,以下代码输出结果是什么

c++中用*this返回一个对象,会调用复制构造函数吗?

有没有办法构造一个 Q 对象,它代表一个 EmptyQueryset,即总是返回一个空结果?

new关键字对构造函数做了什么

对 ExecuteNonQuery 的 Postgres 函数(通过 npgsql)调用返回 -1 作为受影响行的结果

javascript中 原型对象中的 例如:obj.prototype.constructor指向错误,不是指向构造函数本身,那有啥影响?