原型问题3—构造函数返回对象
function P(){
return {
test:'tom'
}
}
var p1 = new P(),
p2 = P();
console.log(p1.test);//tom
console.log(p2.test);//tom
这个是讲得构造函数返回值得问题:
如果存在返回值则检查其返回值是否为引用类型,如果为非引用类型,如(string,number,boolean,null,undefined),上述几种类型的情况与没有返回值的情况相同,实际返回实例化的对象
所以构造函数P返回了一个引用值,所以改变了原有的引用指向;
console.log(p1.__proto__ === P.prototype); //false
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步