28.05.2013 Views

javascript by example

javascript by example

javascript by example

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Capitolo 1<br />

'targa' : 'TO23443',<br />

'prezzo' : 3000,<br />

'prezzoAlto' : function (){ return (this.prezzo > 10000)}<br />

};<br />

Linguaggio<br />

In questo modo però definiamo proprietà e metodi per un oggetto<br />

specifico, se quest'oggetto è stato creato in base ad un modello<br />

proprietà e metodi non apparterranno agli oggetti successivamente<br />

creati con quel modello. Perché ciò avvenga è necessario<br />

intervenire sul modello e non sulla singola istanza, questo<br />

è possibile facendo riferimento alla proprietà prototype :<br />

//costruttore<br />

function Auto (posti, marca, targa){<br />

}<br />

this.posti = posti;<br />

this.marca = marca;<br />

this.targa = targa;<br />

//utilizzo di prototype<br />

Auto.prototype.prezzo = 0; //aggiungo una proprietà<br />

Auto.prototype.prezzoAlto = function (){ //aggiungo un metodo<br />

}<br />

return (this.prezzo > 10000);<br />

//implementazione<br />

var auto2 = new Auto (4,'Citroen 2 cv','DX234ED');<br />

auto2.prezzo = 11000;<br />

document.write(auto2.prezzoAlto()); //true<br />

Da notare che prototype serve soprattutto per l'aggiunta successiva<br />

di metodi e proprietà (o per migliorare la leggibilità del codice),<br />

essi possono infatti essere inseriti direttamente nel costruttore:<br />

I libri di ioPROGRAMMO/Javascript <strong>by</strong> Example 31<br />

JAVASCRIPT<br />

BY EXAMPLE

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!