2009-10-27 11 views

Odpowiedz

12

To jest część javascript i nie jest specyficzna dla jquery.

Właściwość prototype definiuje metody i właściwości wspólne dla wszystkich obiektów tego typu.

np.

function MyClass() 
{ 
} 

myClass.prototype.myMethod = function() 
{ 
    alert("hello world"); 
} 

var myObject = new MyClass(); 
myObject.myMethod(); 

Wszystkie przypadki MyClass będzie miał (udział) sposobu myMethod().

Należy zauważyć, że metody na prototypie nie mają takiej samej widoczności, jak metody zadeklarowane w konstruktorze.

Na przykład:

function Dog(name, color) 
{ 
    this.name = name; 

    this.getColor = function() 
    { 
     return color; 
    } 
} 

Dog.prototype.alertName = function { 
    alert(this.name); 
} 

Dog.prototype.alertColor = function { 

    //alert(color); //fails. can't see color. 
    //alert(this.color); //fails. this.color was never defined 

    alert(this.getColor()); //succeeds 
} 

var fluffy = new Dog("Fluffy","brown"); 
Powiązane problemy