Kein Standard
Diese Funktion entspricht nicht dem Standard und ist nicht Teil der Standardisierung. Diese Funktion darf nicht in Webseiten, die via das Internet zugänglich sind, benutzt werden: Sie wird nicht für alle Nutzer funktionieren. Es kann zu umfangreichen Inkompatibilitäten zwischen verschiedenen Implementierungen kommen und die Funktionsweise oder Eigenschaften könnten in der Zukunft verändert werden.
Die function.displayName
Eigenschaft gibt den sichtbaren Namen der Funktion zurück.
Beschreibung
Wenn definiert, gibt dit displayName
Eigenschaft den sichtbaren Namen der Funktion zurück:
function doSomething() {} console.log(doSomething.displayName); // "undefined" var popup = function(content) { console.log(content); }; popup.displayName = 'Show Popup'; console.log(popup.displayName); // "Show Popup"
Man kann eine Funktion mit sichtbaren Namen mit einem Funktionsausdruck definieren:
var object = { someMethod: function() {} }; object.someMethod.displayName = 'someMethod'; console.log(object.someMethod.displayName); // logs "someMethod" try { someMethod } catch(e) { console.log(e); } // ReferenceError: someMethod is not defined
Man kann den displayName
einer Funktion dynamisch ändern:
var object = { // anonymous someMethod: function(value) { arguments.callee.displayName = 'someMethod (' + value + ')'; } }; console.log(object.someMethod.displayName); // "undefined" object.someMethod('123') console.log(object.someMethod.displayName); // "someMethod (123)"
Beispiele
Konsolen und Profiler präferieren die func.name
zum anzeigen des Namens einer Funktion.
Beim eingeben des Folgenden Quelltextes in der Konsole, wird etwas wie "function My Function()
" ausgegeben:
var a = function() {}; a.displayName = 'My Function'; a; // "function My Function()"
Spezifikationen
In keiner Spezifikation enthalten.
Browserkompatibilität
Desktop | Mobile | Server | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
displayName | Chrome Keine Unterstützung Nein | Edge Keine Unterstützung Nein | Firefox Vollständige Unterstützung 13 | IE Keine Unterstützung Nein | Opera Keine Unterstützung Nein | Safari ? | WebView Android Keine Unterstützung Nein | Chrome Android Keine Unterstützung Nein | Firefox Android Vollständige Unterstützung 14 | Opera Android Keine Unterstützung Nein | Safari iOS ? | Samsung Internet Android Keine Unterstützung Nein | nodejs Keine Unterstützung Nein |
Legende
- Vollständige Unterstützung
- Vollständige Unterstützung
- Keine Unterstützung
- Keine Unterstützung
- Kompatibilität unbekannt
- Kompatibilität unbekannt
- Nicht standardisiert. Erwarte schlechte browserübergreifende Unterstützung.
- Nicht standardisiert. Erwarte schlechte browserübergreifende Unterstützung.