JavaScript Wo ist meine Funktion?

Hendoul

Commander
Registriert
Apr. 2008
Beiträge
2.054
Hi :)

Wenn ich folgende Funktion definiere, wo kann ich diese dann finden? Und damit meine ich wenn ich via F12 die Dev-Console öffne und debugge und danach suche. Ich dachte die müsste auf dem Global Scope sein?

Javascript:
function myFunc() {
    console.log('myFunc was called');
}
 
Das kommt darauf an wo du sie definiert hast. Wenn sie innerhalb eines Closure ist, dann kommst du da nicht so einfach dran.
 
Hm, einfach in JsFiddle diesen Code eingegeben.
 
Und JsFiddle hängt deine Funktionen nicht einfach an die window Variable, sondern verwaltet sie in einem eigenen Scope.

Wenn du deine Funktion direkt in der Entwickler Konsole (F12) definierst, dann kannst du sie dort auch aufrufen.

EDIT:
Nimm z.B. folgenden Code:
Code:
(function() {
  function foo() {
    console.log('foo');
  }

  foo();
}());
Das ist ein Closure, in dem die function foo definiert und ausgeführt wird. Aber die function ist von außen nicht aufrufbar.

Mehr dazu z.B. hier: https://developer.mozilla.org/de/docs/Web/JavaScript/Closures
 
Zuletzt bearbeitet:
myFunc() aufrufen in deinem Script:

Javascript:
myFunc();

function myFunc() {
    console.log('myFunc was called');
}

eine Funktion zu definieren reicht nicht aus, du musst sie schon von irgendwo her aufrufen. Danach sollte in der Browser Console myFunc was called erscheinen.

Z.b sieht es so aus, wenn du im JS noch eine Variable mitgeben möchtest. Falls dein Funktion so etwas verwenden soll
Javascript:
myFunc("FunctionName");


function myFunc(myValue) {

    console.log('myFunc named ' + myValue + ' was called' );

}
/Plain JS - gewisse JavaScript FrameWorks können noch mehr
 
Alles klar, habe sie gefunden :D Danke :)
 
Zurück
Oben