Cette page a été traduite à partir de l'anglais par la communauté.Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.
Function.displayName
Non standard: Cette fonctionnalité n'est pas standardisée. Nous déconseillons d'utiliser des fonctionnalités non standard en production, car leur prise en charge par les navigateurs est limitée, et elles peuvent être modifiées ou supprimées. Toutefois, elles peuvent constituer une alternative appropriée dans certains cas où aucune option standard n'existe.
La propriétéfunction.displayName renvoie le nom affiché de la fonction.
Dans cet article
Description
Lorsque la propriétédisplayName est définie, elle renvoie le nom affiché de la fonction :
function faireTruc() {}console.log(faireTruc.displayName); // "undefined"var logMessage = function (contenu) { console.log(contenu);};logMessage.displayName = "Afficher les messages dans le journal";console.log(logMessage.displayName); // "Afficher les messages dans le journal"Il est possible de définir une fonction avec un nom d'affichage grâce à uneexpression de fonctions:
var objet = { uneMéthode: function () {},};objet.uneMéthode.displayName = "uneMéthode";console.log(objet.uneMéthode.displayName);// "uneMéthode"try { uneMéthode;} catch (e) { console.log(e);}// ReferenceError: uneMéthode is not definedLa propriétédisplayName peut être changée dynamiquement :
var objet = { // anonyme uneMéthode: function (valeur) { this.displayName = "uneMéthode (" + valeur + ")"; },};console.log(objet.uneMéthode.displayName); // "undefined"objet.uneMéthode("123");console.log(objet.uneMéthode.displayName); // "uneMéthode (123)"Exemples
On souhaite généralement utiliser cette propriété dans les consoles et profileurs plutôt quefunc.name
Le code suivant devrait afficher quelque chose comme "function Ma Fonction()":
var a = function () {};a.displayName = "Ma Fonction";a;Spécifications
N'appartient à aucune spécification.