在许多情况下,我都能够以两种方式为所有 HTMLElement 注册方法。
所以我很好奇,有什么区别吗?
我应该更喜欢一种方法而不是另一种方法吗?
什么是正确的方法?
user1598585
问问题
1474 次
2 回答
3
使用原型使原型链中的所有对象都可以使用该函数。它基本上扩展了课程。而另一个只是向当前元素添加一个属性。但正如菲利克斯所说,正确的做法是根本不这样做。
于 2011-08-27T17:11:40.150 回答
0
因为 JavaScript 是一种基于原型的语言而不是基于类的语言,所以它们的关键字.prototype.variable
或.__proto__.variable
(对于数学)用于直接访问原型(如基于类的语言中的类定义)并修改它以影响其所有实例,即使实例具有在原型修改之前创建。而 .variable 不访问原型只会影响指定的实例。
简而言之,“HTMLElement.prototype.someFunc =”将允许所有 HTMLElement(以及从 HTMLElement 继承的原型)访问 someFunc。而 HTMLElement.someFunc 应该只用于允许 HTMLELement 的特定实例访问 someFunc。
于 2013-12-24T05:29:38.623 回答