Kurt Z: Vererbungshierarchie ?!?

Beitrag lesen

Hi

function MyBaseObject(id, p) {

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

function MyChildObject(id, c) {
function F() {
  var color = c;
  this.getColor = function() { return color;}
}
F.prototype = new MyBaseObject(id, this);
return new F();
}

var o1 = new MyChildObject('test_1', 'red');
var o2 = new MyChildObject('test_2', 'green');
alert(o1.id())
alert(o2.id())


>   
> Wie würde ich das mit der Kontruktorfunktion schreiben?  
>   
  
um das zu beantworten müsste man deinen Code erst verstehen ...  
  
Die Funktion  MyChildObject retuniert  eine Instanz des Konstruktor MyBaseObject. Aber statt  
  
var o1 = MyChildObject('test\_1', 'red');  
  
schreibst du  
  
var o1 = new MyChildObject('test\_1', 'red');  
  
d.h. für du erzeugst in o1 eine Instanz von MyChildObject, und bei der Konstruktion wird eine Instanz von MyBaseObject returniert.  
  
Was passiert sinnvolles mit dem Returnvalue einer Konstruktion ?!?  
  
Ich bin ziemlich ratlos ... erklär mal was das bewirkt.  
  
Kurt
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