Wie nennt man das?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wie nennt man das?

    PHP-Code:

    function meinObjekt ()
    {
      
    this.bla 'laber';
      
    this.doSomething = function ()
      { 
        
    this.blubb 'blubber';
        
    this.doSomethingElse = function()
        {
          
    alert (this.bla);
        }
        
    this.doSomethingElse();
      }

    Mir geht es speziell um this.blubb = 'blubber'; und this.doSomethingElse = function(). Wie zum Teufel nennt man das?

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

  • #2
    this.blubb ist eine Eigenschaft. function() {} ist eine anonyme Funktion. Oder versteh ich dich falsch?

    Kommentar


    • #3
      Zitat von Kropff Beitrag anzeigen
      Mir geht es speziell um this.blubb = 'blubber'; und this.doSomethingElse = function(). Wie zum Teufel nennt man das?
      Ersteres ist in JavaScripts OO-Modell das Schema, um Attribute/Eigenschaften als public zu deklarieren, und letzteres eine Methode als privileged.

      Siehe auch Private Members in JavaScript
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        Erst mal danke für die Antworten. Ich glaube, ich habe mich missverständlich ausgedrückt. Es geht hier nich tum die Sichtbarkeitsstufen. Es könnte auch so aussehen:
        PHP-Code:
        function meinObjekt ()
        {
          function 
        doSomething ()
          { 
            var 
        blubb 'blubber';
            function 
        doSomethingElse ()
            {

            }
          }

        ich habe ja ein Objekt meinObjekt. Darin befindet sich eine Methode doSomething. Und die beinhaltet wiederum eine Eigenschaft und Methode. Mir geht es um die Bezeichnung dieser Verschachtelung. Methodenmethode? Methodeneigenschaft?

        Peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Hallo Peter,

          meinObjekt ist kein Objekt, sondern ein Konstruktor, um ein Objekt zu erzeugen. Man könnte es also auch Klasse nennen. Da jetzt allerdings kein this mehr drin vorkommt und ich nicht weiß, ob du es jemals mit new aufrufst, würde ich sogar sagen, das es nur ein Closure ist.

          Kannst du vielleicht den Kontext dieses Konstrukts näher erläutern? Es kann halt vieles sein, dafür müsste man aber auch wissen, wie du es einsetzt.

          Gruß,

          Amica
          [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
          Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
          Super, danke!
          [/COLOR]

          Kommentar


          • #6
            Zitat von AmicaNoctis Beitrag anzeigen
            meinObjekt ist kein Objekt, sondern ein Konstruktor,
            Stimmt, vergesse ich immer wieder.
            Zitat von AmicaNoctis Beitrag anzeigen
            Kannst du vielleicht den Kontext dieses Konstrukts näher erläutern? Es kann halt vieles sein, dafür müsste man aber auch wissen, wie du es einsetzt.
            Ich habe das noch in keinem Kontext eingesetzt. Hab einfach mal damit herumgespielt und es funktionierte. Ist ja bei Literalen auch möglich.
            Zitat von AmicaNoctis Beitrag anzeigen
            würde ich sogar sagen, das es nur ein Closure ist.
            Könnte sein.

            Peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Kommentar


            • #7
              Ohne Kontext ist es einfach nur eine Funktion, wie auch ein Apfel nur ein Apfel ist. In einem konkreten Kontext, kann man es evtl. dann auch anders sehen, so wie der Apfel im Kontext von Newton, Wilhelm Tell oder Adam und Eva jeweils noch einen zusätzlichen symbolischen Charakter erhält.
              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
              Super, danke!
              [/COLOR]

              Kommentar


              • #8
                Dann gebe ich mich mit der Antwort mal zufrieden.

                Danke
                Peter
                Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                Meine Seite

                Kommentar


                • #9
                  Die feinen Unterschiede

                  PHP-Code:
                  function bla()
                  {
                    function 
                  blubb()
                    {
                      ..
                    }
                    
                  blubb = function ()
                    {
                      ...
                    }
                    var 
                  blubb = function()
                    {
                      ...
                    }

                  Kann mir mal einer den Unterschied der einzelnen Methodendeklarationen von blubb erklären? Haben die was mit den Closures zu tun? Lese mich gerade in das Thema ein und hab noch ein paar Verständnisprobleme.

                  Peter
                  Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                  Meine Seite

                  Kommentar


                  • #10
                    Hallo Peter,

                    die erste und dritte Definition sind äquivalent. Die zweite erzeugt ein Autoglobal. Ohne var werden Eigenschaften dem window-Objekt hinzugefügt. Das passiert bei der zweiten, die anderen beiden sind nur innerhalb der äußeren Funktion (bla) gültig.

                    Gruß,

                    Amica
                    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                    Super, danke!
                    [/COLOR]

                    Kommentar


                    • #11
                      Danke, Schatzi . Wenn ich dich nicht hätte.

                      Peter

                      PS: Irgendwann muss ich dich mal kennenlernen!
                      Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                      Meine Seite

                      Kommentar


                      • #12
                        Gern geschehen, lieber Peter. Du hättest mich und mein Schatzi ja am Samstag kennenlernen können, aber du wolltest ja nicht
                        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                        Super, danke!
                        [/COLOR]

                        Kommentar


                        • #13
                          Zitat von AmicaNoctis Beitrag anzeigen
                          Gern geschehen, lieber Peter. Du hättest mich und mein Schatzi ja am Samstag kennenlernen können, aber du wolltest ja nicht
                          Berlin ist weit, ich bin alt und mein Babysitter unset konnte auch nicht.

                          Peter
                          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                          Meine Seite

                          Kommentar

                          Lädt...
                          X