【发布时间】:2016-12-04 12:32:27
【问题描述】:
我很难理解这一点,甚至在互联网上摸索。这是我在 javscript 中的 sn-p:
TEST=function(){};
TEST.prototype={
b:{
b1:"",
b2:{}
}
};
//Instance 1
var first=new TEST();
first.b.b1="TEXT";
//Instance 2
var second=new TEST();
console.log("Result",second.b.b1);
控制台日志会输出“TEXT”,我想要“”。所以我想知道为什么我得到这个结果,为什么在创建一个新实例然后设置值时它会改变“TEST”原型(这是我的主要问题)?
我得到了 Bergi 和 Mykola 的帮助(谢谢),还有一个副本。但是我仍然认为我因这种行为而丢失了资源,并且想知道为什么要以这种方式构建它?处理实例时无需更新原型。
【问题讨论】:
标签: javascript object inheritance prototype