2

可能重复:
JavaScript .prototype 是如何工作的?

当即使没有属性也可以将属性添加到对象时,原型属性有什么用?

var o = {};

o.x = 5;
o.y = test;

test = new function(){ alert("hello"); };
4

2 回答 2

6

向原型添加方法/属性是将其添加到原型链中具有该原型的所有对象。

您的代码正在向单个实例添加方法/属性。

要使用原型,您需要使用 new 创建对象。如果您通过对象文字创建对象,则您没有指定对象的原型,据我所知,您无法追溯设置原型。

于 2011-08-23T17:31:45.693 回答
3

您可以使用它为现有对象创建新方法。

String.prototype.displayFirstCharacter = function(){
   alert(this.substr(0,1));
}

"my string, first char should be 'm'".displayFirstCharacter();
于 2011-08-23T17:34:51.463 回答