在javascript中使用prototype属性有什么用?

时间:2011-08-23 17:29:37

标签: javascript prototypal-inheritance

  

可能重复:
  How does JavaScript .prototype work?

即使没有它,也可以在将属性添加到对象时使用prototype属性是什么?

var o = {};

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

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

2 个答案:

答案 0 :(得分:4)

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

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

要使用原型,您需要使用new创建对象。如果你通过对象文字创建一个对象,你没有指定对象的原型,据我所知你不能回顾性地设置原型。

答案 1 :(得分:3)

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

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

"my string, first char should be 'm'".displayFirstCharacter();