--- title: Function.displayName slug: Web/JavaScript/Reference/Global_Objects/Function/displayName translation_of: Web/JavaScript/Reference/Global_Objects/Function/displayName original_slug: Web/JavaScript/Referencia/Objetos_globales/Function/displayName ---
The function.displayName
property returns the display name of the function.
Cuando se define la propiedad displayName
, retorna un mensaje con el nombre para mostrar en una función:
function doSomething() {} console.log(doSomething.displayName); // "undefined" var popup = function(content) { console.log(content); }; popup.displayName = 'Show Popup'; console.log(popup.displayName); // "Show Popup"
Tu puedes definir una funcion con un nombre a mostrar en un {{jsxref("Functions", "function expression", "", 1)}}:
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
Puedes cambiar dinámicamente el displayName
de una función:
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)"
Normalmente, se prefiere por consolas y profilers sobre {{jsxref("Function.name", "func.name")}} a mostrar el nombre de una función.
Al ingresar lo siguiente en una consola, debería mostrarse como algo así como "function My Function()
":
var a = function() {}; a.displayName = 'My Function'; a; // "function My Function()"
Not part of any specification.
{{Compat("javascript.builtins.Function.displayName")}}