我尝试了一段时间来为一个对象切换构造函数,但我失败了。继续的代码将显示我需要的示例。谢谢。
<script type="text/javascript">
function Me(){
this.name = "Dejan";
}
function You(){
this.name = "Ivan";
}
Me.prototype.constructor = You;
somebody = new Me();
alert(somebody.name); // **It gives Dejan, and I am expecting Ivan**
</script>
最佳答案
Me.prototype.constructor 属性只是Me.prototype 的公共(public)属性,它不会以任何方式用于构建新对象或解析属性名称。
它唯一模糊的兴趣是最初它引用了它的原型(prototype)“属于”的函数,并且 Me 的实例继承了它。因为它是一个公共(public)属性,可以很容易地分配一个新值或隐藏它,所以它不是特别可靠,除非您对它和使用它的代码有严格的控制。
关于javascript - 在 JavaScript 中更改构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6529195/