在构造函数中声明javascript对象方法与在Prototype中声明在创建javascript对象时,我可以将方法声明放入构造函数或原型中。例如,假设我想要一个具有name属性和Bark方法的Dog类。我可以将Bark方法的声明放入构造函数中:var Dog = function(name) {
this.Name = name;
this.Bark = function() {
alert(this.Name + " bark");
};}或者我可以把它作为原型对象的一种方法:var Dog = function(name) {
this.Name = name;}Dog.prototype.Bark = function() {
alert(this.Name + " bark");};当我实例化Dog类型的对象时,这两种方法似乎都很好:var dog = new Dog("Fido");dog.Bark(); //Both approaches show "Fido bark"我应该更喜欢这些方法中的一种而不是另一种吗?使用一种比另一种更有好处吗?在幕后,这两种方法最终会做完全相同的事情吗?大多数人倾向于采用哪种方法?谢谢你的帮助。
3 回答
浮云间
TA贡献1829条经验 获得超4个赞
Bark
添加回答
举报
0/150
提交
取消