felix12: klassenlose vollwertige und flexible oo auf funktionaler basis

Beitrag lesen

Die call Mehode konstruiert nichts, sie ruft nur eine Funktion im Kontext auf.

angenommen ich arbeite mit call, und ich überschreibe eine Funktion der "Klasse" die ich über call konstruiere, wie kann ich dann noch auf sie zugreifen? zb:

function SuperCat() {
  this.sound = "miaow";
}

function SubCat() {
  SuperCat.call(this);

Hier wird nichts konstruiert, du rufst SuperCat im Kontext von this auf, d.h. die Eigenschaft Sound wird einfach hinzugefügt.

Deutlicher wird das wenn du eine SuperCat Prototpye Funktion gibst, diese ist in SubCat nicht bekannt.

Achso, ok! :) Ich hatte mir ein tutorial zu call durchgelesen (http://www.webreference.com/js/column26/call.html) und da wohl den teil "[...] This capability enables you to do a multi-method object construction" falsch interpretiert. naja..

wie rufe ich den member "sound" von der mit call erzeugten instanz der "Klasse" SuperCat auf? Ich meine wie referenziere ich diesen? geht das überhaupt?

Nein, das geht nicht. Mal abgesehen von dem was du sowieso falsch machst, in JS werden überladene Funktion einfach überschrieben.

Mit Mozillabrowser hast du über _proto_ Zugriff auf das Orginal - im IE weiß ich nicht.

Danke für die Info!

Felix

0 45

Interne public static member nicht aufrufbar

felix12
  • javascript
  1. 0
    Cheatah
    1. 0
      felix12
      1. 0
        Cheatah
        1. 0
          felix12
          1. 0
            MudGuard
            1. 0
              felix12
              1. 0
                Struppi
                1. 0
                  Patrick Andrieu
                  1. 1
                    peterS.
                    1. 0
                      Patrick Andrieu
                    2. 0
                      felix12
                2. 1

                  *private static* durch umschliessende anonyme *function stacks*

                  peterS.
                  1. 0
                    felix12
                    1. 0
                      Struppi
                      1. 0
                        felix12
                        1. 2

                          klassenlose vollwertige und flexible oo auf funktionaler basis

                          peterS.
                          1. 0
                            felix12
                            1. 0
                              felix 12
                            2. 0
                              Struppi
                              1. 0
                                felix12
                            3. 1

                              vererbung / delegationsprinzipien

                              peterS.
                              1. 0
                                felixcat
                                1. 1

                                  »[Function].arguments.callee« versus »arguments.callee«

                                  peterS.
                                  1. 0
                                    felix12
      2. 0
        Kai345
        1. 0
          felix12
          1. 0
            ChrisB
            1. 0
              felix12
              1. 0
                Struppi
                1. 0
                  felix12
                  1. 0
                    Struppi
                    1. 0
                      felix12
                      1. 0
                        Struppi
                      2. 1

                        einfache objekte/namensraeume und singleton-konstrukte

                        peterS.
                        1. 0
                          Struppi
              2. 2
                Timo "God's Boss" Reitz
                1. 0
                  felix12
                  1. 0
                    Kai345
                    1. 0
                      felix12
                      1. 0
                        Kai345
                        1. 0
                          Kai345
                          1. 0
                            felix12
                            1. 0
                              Kai345
  2. 4
    molily