molily: Prüfen, ob Funtion existiert?

Beitrag lesen

if(typeof window[name_der_funktion] == 'function'){

Ich hab den dann wie folgt ergänzt:

if(typeof window[name_der_funktion] == 'function'){alert('okay')}else{alert('me')}

Und das funktioniert definitiv nicht!

Zur Unterscheidung:

Zugriff auf ein Unterobjekt über den direkt notierten Namen:
window.blub

Zugriff auf ein Unterobjekt über den Namen, der jedoch steckt in einem String:

window["blub"]

Über eine Variable dann:

var stringMitFunktionsnamen = "blub";
window[stringMitFunktionsnamen]

Ist letztlich alles dasselbe, weil halt die Funktion blub angesprochen wird.

Das bedeutet:

var stringMitFunktionsnamen = "blub";
if (typeof window[stringMitFunktionsnamen]) {
   alert("globale Funktion namens " + stringMitFunktionsnamen + " existiert");
}

Hingegen:

if (typeof blub == "function") {
   alert("Funktion namens blub existiert");
}

Da das nicht in allen Fällen identisch ist mit dem ersten, kann man die existiert globaler Funktionen auch so abfragen:

if (typeof window.blub == "function") {
   alert("globale Funktion blub existiert");
}

Mathias