我一直在尝试理解 JS 中原型的概念,但由于某种原因,我发现它真的很莫名其妙。为什么以及何时使用原型?
这之间有什么区别(来自这个MDN 示例):
function Person(gender) {
this.gender = gender;
}
Person.prototype.sayHello = function()
{
alert ('hello');
};
还有这个:
function Person(gender) {
this.gender = gender;
this.sayHello = function() {
alert('hello');
};
}
我想我了解如何使用它们,但我不知道为什么要使用它们。也许我错过了一些东西 - 从头开始 - 显然我错过了一些东西!
有人可以解释这两个示例之间的区别以及为什么我应该使用另一个示例吗?
谢谢!