构造函数中返回一个对象对结果有什么影响
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/
谷歌真心不错,百度搜出来的都是些陈词滥调