From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../objets_globaux/function/displayname/index.html | 81 ++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 files/fr/web/javascript/reference/objets_globaux/function/displayname/index.html (limited to 'files/fr/web/javascript/reference/objets_globaux/function/displayname') diff --git a/files/fr/web/javascript/reference/objets_globaux/function/displayname/index.html b/files/fr/web/javascript/reference/objets_globaux/function/displayname/index.html new file mode 100644 index 0000000000..dc9f7fc870 --- /dev/null +++ b/files/fr/web/javascript/reference/objets_globaux/function/displayname/index.html @@ -0,0 +1,81 @@ +--- +title: Function.displayName +slug: Web/JavaScript/Reference/Objets_globaux/Function/displayName +tags: + - Function + - JavaScript + - Non-standard + - Propriété + - Reference +translation_of: Web/JavaScript/Reference/Global_Objects/Function/displayName +--- +
{{JSRef}} {{Non-standard_header}}
+ +

La propriété function.displayName renvoie le nom affiché de la fonction.

+ +

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 à une {{jsxref("Fonctions", "expression de fonctions","",1)}}:

+ +
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 defined
+
+ +

La 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 que {{jsxref("Function.name", "func.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.

+ +

Compatibilité des navigateurs

+ + + +

{{Compat("javascript.builtins.Function.displayName")}}

-- cgit v1.2.3-54-g00ecf