Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Prosze o pomoc w zrozumieniu obiektów, Kod z kursu mi nie działa ale zmodyfikowany przeze mnie tak!
adbacz
post 4.09.2011, 10:49:06
Post #1





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

Ostrzeżenie: (0%)
-----


Własnie rozpoczałem naukę JavaScript. Kurs z neta dostępny pod stronką: Poradnik Webmastera.

Na podanej stronce jest na jednym z listingów coś takiego:

Kod
function Punkt_toString()
{
    return "(" + this.x + "," + this.y + ")";
}

function Punkt(x, y)
{
    this.x = x;
    this.y = y;
    this.toString = Punkt_toString;
}

var p = new Punkt(10, 20);
alert("Współrzędne punktu to " + p);


Niestety nie chce mi to działać. Zacząłem sobie analizowac kod no i zmodyfikowałem troszke przy okazji dodałem coś nowego. Chodzi o to, że to wyżej nie chce działać, ale to moje już tak. Obkomentowane zmienione elementy:
Kod
//Dodana właściwość param w parametrze funkcji oraz później zamiast this.x jesy param.x
function _punkt_ToString(param) {
  return "Współrzędne to (" + param.x + ", " + param.y + ")";
}

function WspolrzedneWypisz(x, y) {
  this.x = x;
  this.y = y;
  
  //Tutaj wysyłam do wunkcji this. Nie wiem czy to dobrze, ale wszystko działa więc chyba dobrze
  //W oryginalnym kodzie jest this.ToString = _punkt_ToString; więc to tak jakby w ogóle nie było funkcji ale tylko pole.
  this.ToString = _punkt_ToString(this);
  
  this.Alertuj = function() {
    alert(this.ToString);
  }
  this.Wypisz = function() {
    document.write(this.ToString);
  }
}


No i później na stronie mam takie coś:
  1. <script type="text/javascript">
  2. var Punkt = new WspolrzedneWypisz(2, 2);
  3. Punkt.Wypisz();
  4. <a href="java script:Punkt.Alertuj()">Alertuj</a>


Mogę liczyć na czyjś głos w tej sprawie dlaczego jest tak a nie inaczej?

Ten post edytował adbacz 4.09.2011, 10:50:39
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 04:39