简单的javascript方法问题

时间:2012-08-29 23:38:16

标签: javascript jquery

我试图了解以下代码之间的差异..

Select.prototype.create = function(){

codes1......

}

Search.prototype.create = function(){

codes2......
}

它们都有不同的代码,但方法相同。我不知道为什么以及如何运作。任何人都可以帮助我吗?非常感谢。

2 个答案:

答案 0 :(得分:1)

它们是在两个不同构造函数的原型上定义的相同方法。 Select和Search似乎是不同对象的构造函数(如其名称所暗示的那样)。如果你做了

var a = new Select(); a.create(); //这将运行代码1 ....

var b = new Search(); b.create(); //这将运行代码2 ...

答案 1 :(得分:1)

Javascript函数/方法不仅仅是名称的唯一性。整个定义Search.prototype.create应该是唯一的。 我说应该是因为Javascript允许您替换定义而不会导致任何错误/警告

Javascript看到两种方法,一种在Search原型链上,另一种在Select原型上。这两种方法碰巧被称为相同但根据语言无关。

通常,在任何其他语言或API中,都会使用常见名称,例如length, toString, call, dispose, replace,列表可以继续使用。