--- title: Function.displayName slug: Web/JavaScript/Reference/Global_Objects/Function/displayName tags: - Function - JavaScript - Non-standard - Property translation_of: Web/JavaScript/Reference/Global_Objects/Function/displayName ---
Свойство function.displayName возвращает отображаемое имя функции.
Если оно определено, свойство displayName возвращает отображаемое имя функции:
function doSomething() {}
alert(doSomething.displayName); // "undefined"
var popup = function(content) { alert(content); };
popup.displayName = 'Показать всплывающее окно';
alert(popup.displayName); // "Показать всплывающее окно"
Вы можете определить функцию с отображаемым именем в {{jsxref("Functions_and_function_scope", "выражении функции", "", 1)}}:
var object = {
someMethod: function() {}
};
object.someMethod.displayName = 'someMethod';
alert(object.someMethod.displayName); // выведет "someMethod"
try { someMethod } catch(e) { alert(e); }
// ReferenceError: someMethod is not defined
Вы можете динамически изменять свойство displayName функции:
var object = {
// анонимная функция
someMethod: function(value) {
this.displayName = 'someMethod (' + value + ')';
}
};
alert(object.someMethod.displayName); // "undefined"
object.someMethod('123')
alert(object.someMethod.displayName); // "someMethod (123)"
Обычно оно используется консолью и профилировщиком, как обёртка над {{jsxref("Function.name", "func.name")}} для отображения имени функции.
Введя следующий пример в консоль, вы должны увидеть что-то вроде "function Моя функция()":
var a = function() {};
a.displayName = 'Моя функция';
a
Не является частью какой-либо спецификации.
{{Compat}}