Struppi: Vererbungshierarchie ?!?

Beitrag lesen

Hier mal ein etwas hypothetisches Beispiel eines DOM Elementes.

Das ist ziemlich trickreich mit Closures und allem. Die Variable parent wird nicht weiter verwendet, Absicht?

Ich hab hier noch ein komplexeres Beispiel ;-)

Ich denke konkret an Objekte um das DOM zu manipulieren und/oder Elemente zu erzeugen bzw. löschen. Da ist ein parent u.U. notwendig, wobei das this hier wohl eher Blödsinn ist.

Wie würde ich das mit der Konstruktorfunktion schreiben?

...

Oder, wenn MyBaseObject totzdem mitspielen soll (aber ohne parent), z.B. so:

Ja, das sollte existieren, da ich ja mehrere unterschiedliche Objekte davon erben lassen will.

function MyBaseObject(id) {

var obj = document.getElementById(id) || { id:id};
        return {id: function() {return obj.id;} };
    }

function MyChildObject(id, c) {

return {
                 id: MyBaseObject(id).id,
                 getColor: function () { return c; }
               };
    }

  
Hmm, das ist so nicht gewollt, die Funktion id ist nur ein Beispiel, MyBaseObjekt() soll/kann natürlich mehrere Methoden haben, die vererbt werden sollen  
  

> Die Variable parent hast du Schlingel ;-) wohl absichtlich als besonderen Stolperstein eingebaut.  
  
Nicht wirklich ;-)  
Ich hab da eher an was falsches gedacht (s.o).  
  

> Wegen der Closures würde es mit der Konstruktorfunktion wohl eher kompliziert aussehen. Vielleicht finde ich noch Zeit, es mal umzusetzen, mitsamt parent.  
  
das ist ja der Punkt, mir leuchtet der Sinn von der Funktion object() nicht ein, da ich so einfache Konstrukte nicht habe, wenn ich mit Vererbung arbeite.  
  
Es kann aber auch durchaus sein, dass ich immer noch nicht 100% hinter OOP steige, da ich nie was mit Java gemacht habe und insofern wenig Ahnung von Klassen und Vererbung habe.  
  
Struppi.
0 67

Vererbungshierarchie ?!?

Kurt Z
  • javascript
  1. 0
    Struppi
    1. 0
      molily
    2. 0
      Don P
      1. 0
        Kurt Z
        1. 0
          Struppi
          1. 0
            Don P
            1. 0
              Struppi
              1. 0
                Don P
                1. 0
                  Struppi
                  1. 0
                    Don P
                    1. 0
                      Struppi
                      1. 0
                        Don P
                        1. 0
                          Struppi
                          1. 0
                            Don P
                      2. 0
                        Kurt Z
                        1. 0
                          Struppi
                          1. 0
                            Kurt Z
                            1. 0
                              Struppi
                              1. 0
                                Kurt Z
                                1. 0
                                  Struppi
                                  1. 0
                                    Kurt Z
                                    1. 0
                                      LanX²
                                    2. 0
                                      Struppi
                                      1. 0
                                        Kurt Z
                                        1. 0
                                          Kurt Z
                                        2. 0
                                          Struppi
                                          1. 0
                                            Kurt Z
                              2. 0
                                Don P
              2. 0
                LanX²
                1. 0

                  Function.prototype.begetObject

                  LanX²
                  1. 0
                    Don P
                    1. 0

                      Knobelaufgabe

                      LanX²
                      1. 0
                        Don P
                    2. 0
                      molily
                      1. 0
                        Kurt Z
                        1. 0

                          Please beget it!

                          LanX²
                          1. 0
                            Kurt Z
                          2. 0
                            Don P
                            1. 0
                              LanX²
                              1. 0
                                Don P
                              2. 0

                                Iterator

                                KurtZ
                                1. 0
                                  LanX
                      2. 0
                        Don P
        2. 0

          new Object(x) statt object(x)

          Kurt Z
          1. 0
            Murphy
            1. 0
              Kurt Z
              1. 0
                Don P
              2. 0
                Murphy
                1. 0
                  Kurt Z
                2. 0
                  molily
  2. 0
    LanX²
  3. 0
    molily
  4. 3

    __proto__ chain

    LanX²
    1. 0
      LanX²
      1. 0
        Kurt Z
    2. 1
      molily
  5. 0

    JS-Version?

    Kurt Z
    1. 0
      Kurt Z
      1. 0
        molily
        1. 0
          molily
    2. 0
      molily
      1. 0
        Kurt Z
        1. 0
          molily
          1. 0
            Kurt Z
  6. 0

    VIELEN DANK!!!

    Kurt Z
    1. 0
      Struppi