--- title: Function.name slug: Web/JavaScript/Reference/Global_Objects/Function/name translation_of: Web/JavaScript/Reference/Global_Objects/Function/name ---
La propietat function.name retorna el nom de la funció.
configurable també era false.La propietat name retorna el nom de la funció, o una cadena buida per les funcions anònimes.
function fesAlgo() {}
console.log(desAlgo.name); // escriu "fesAlgo"
Les funcions creades amb la sintaxis new Function(...) o sols Function(...)tenen la seva propietat name en una cadena buida. En els exemples següents es creen funcions anònimes , de forma que name retorna una cadena buida:
var f = function() {};
var object = {
someMethod: function() {}
};
console.log(f.name == ''); // true
console.log(object.someMethod.name == ''); // també true
Es pot definir una funció amb un nom en un {{jsxref("Operators/Function", "function expression", "", 1)}}:
var object = {
someMethod: function object_someMethod() {}
};
console.log(object.someMethod.name); // logs "object_someMethod"
try { object_someMethod } catch(e) { console.log(e); }
// ReferenceError: object_someMethod no està definit
No es pot canviar el nom de la funció, aquesta propietat és només llegible:
var object = {
// anònima
someMethod: function() {}
};
object.someMethod.name = 'someMethod';
console.log(object.someMethod.name); // cadena buida, someMethod és anònima.
Per canviar-ho, es pot utilitzar {{jsxref("Object.defineProperty()")}}.
Es pot utilitzar obj.constructor.name per comprovar la "classe" d'un objecte:
function a() {}
var b = new a();
console.log(b.constructor.name); // escriu "a"
| Especificació | Estat | Comentaris |
|---|---|---|
| {{SpecName('ES2015', '#sec-name', 'name')}} | {{Spec2('ES2015')}} | Definició inicial. |
| Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Suport bàsic | 33 | {{CompatVersionUnknown}} | {{CompatNo}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
| Configurable: true | 43 | {{CompatGeckoDesktop(38)}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
| Característica | Android | Chrome per Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Suport bàsic | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatNo}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
| Configurable: true | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatGeckoMobile(38)}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |