Salve a tutti.
In seguito alla scoperta del magnifico mondo dell'OOP, la progettazione orientata agli oggetti, mi sono creato l'oggetto "color" in javascript con il seguente codice:
function color(R,G,B)
{
this.R = R;
this.G = G;
this.B = B;
this.print = function() {alert("["+this.R+","+this.G+","+this.B+"]");}
}
ed ho istanziato due oggetti di tipo color, come segue:
color1=new color(255,255,255); //bianco
color2=new color(255,255,0); //giallo
Ecco ora cosa vorrei fare:
color3=new color();
color3=color1-color2;
color3.print();
e vorrei ottenere l'alert: "[0,0,255]", ossia la sottrazione, indice a indice, dei due colori. Però ovviamente lo script si blocca perché non sa come effettuare la sottrazione color1-color2, non gliel'ho spiegato.
È possibile fargli capire, in qualche modo, che quando sottraggo due variabili di tipo 'color' deve eseguire in realtà la funzione:
{
color3=new color();
color3.R = color1.R-color2.R;
color3.G = color1.G-color2.G;
color3.B = color1.R-color2.B;
return color3;
}
Ossia, si può "ridefinire" l'operatore "-" contestualmente ai miei oggetti color? So che con C++ si può fare, e contando che javascript è piuttsto simile, speravo ci fosse l'analogo (ma in internet non ho trovato nulla).
Grazie anticipatamente per l'aiuto!
Andrea



Rispondi quotando
