This page was translated from English by the community.Learn more and join the MDN Web Docs community.
Function.displayName
Не стандартно: Эта функция не стандартизирована. Мы не рекомендуем использовать нестандартные функции в действующих проектах, так как их поддержка браузерами ограничена, а поведение может измениться или быть удалено. Тем не менее, в некоторых случаях, когда нет стандартного решения, они могут быть подходящей альтернативой.
In this article
Сводка
Свойствоfunction.displayName возвращает отображаемое имя функции.
Описание
Если оно определено, свойствоdisplayName возвращает отображаемое имя функции:
function doSomething() {}alert(doSomething.displayName); // "undefined"var popup = function (content) { alert(content);};popup.displayName = "Показать всплывающее окно";alert(popup.displayName); // "Показать всплывающее окно"Вы можете определить функцию с отображаемым именем ввыражении функции:
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)"Примеры
Обычно оно используется консолью и профилировщиком, как обёртка надfunc.name для отображения имени функции.
Введя следующий пример в консоль, вы должны увидеть что-то вроде "function Моя функция()":
var a = function () {};a.displayName = "Моя функция";a;Спецификации
Не является частью какой-либо спецификации.