Ankündigung

Einklappen
Keine Ankündigung bisher.

Funktionsaufruf per String in IIFE

Einklappen

Neue Werbung 2019

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

  • Funktionsaufruf per String in IIFE

    Hallo Leute,

    Wie kann man in ner IIFE den lokalen Namespace der Funktion ansprechen? Bsp:

    PHP-Code:
    (function (window, $) {

        var 
    _self this;

        function 
    someFunction () {
            
    console.log('TEST');
        }

        
    console.log(_self['someFunction']);
        
    _self['someFunction']();

    })(
    windowjQuery); 
    gibt aus
    Code:
    undefined
    _self.someFunction is not a function

  • #2
    Code:
    (function () {
        this.foo = function () {
            alert('bar');
        };
    
        var functionName = 'foo';
        this[functionName]();
    })();

    Kommentar


    • #3
      Ja schon klar, aber der this-Context ist doch dann der Globale Namespace?! Wozu sollte ich das dann überhaupt in ne Anonyme Funktion packen?

      Kommentar


      • #4
        Zitat von -misc- Beitrag anzeigen
        Ja schon klar, aber der this-Context ist doch dann der Globale Namespace?!
        Dann halt:
        Code:
        (function () {
            var functions = {
                foo: function () {
                    alert('foo');
                }
            };
        
            var functionName = 'foo';
            functions[functionName]();
        })();

        Kommentar


        • #5
          Zitat von -misc- Beitrag anzeigen
          Wie kann man in ner IIFE den lokalen Namespace der Funktion ansprechen? Bsp: ...
          Für das Beispiel ist das gar nicht nötig, da du die Funktion ja direkt ansprechen kannst.

          Kommentar

          Lädt...
          X