--- title: Function.prototype slug: conflicting/Web/JavaScript/Reference/Global_Objects/Function tags: - Function - JavaScript - Propriété - Prototype - Reference translation_of: Web/JavaScript/Reference/Global_Objects/Function translation_of_original: Web/JavaScript/Reference/Global_Objects/Function/prototype original_slug: Web/JavaScript/Reference/Objets_globaux/Function/prototype ---
{{JSRef}}

La propriété Function.prototype représente le prototype de l'objet {{jsxref("Function")}}.

Description

Les objets {{jsxref("Function")}} héritent de Function.prototype. Function.prototype ne peut pas être modifié.

Propriétés

{{jsxref("Function.arguments")}} {{deprecated_inline}}
Un tableau correspondant aux arguments passés à la fonction. Cette propriété est dépréciée et il est préférable d'utiliser l'objet {{jsxref("Fonctions/arguments", "arguments")}} à la place.
{{jsxref("Function.arity")}} {{obsolete_inline}}
Cette propriété était utilisée pour indiquer le nombre d'arguments attendus par la fonction. Cette propriété a été supprimée. La propriété {{jsxref("Function.length", "length")}} doit être utilisée à la place.
{{jsxref("Function.caller")}} {{non-standard_inline}}
Indique la fonction qui a appelée la fonction courante.
{{jsxref("Function.length")}}
Indique le nombre d'arguments attendus par la fonction.
{{jsxref("Function.name")}}
Le nom de la fonction.
{{jsxref("Function.displayName")}} {{non-standard_inline}}
Le nom de la fonction à utiliser pour l'affichage.
Function.prototype.constructor
Définit la fonction qui crée le prototype de l'objet. Voir la page {{jsxref("Object.prototype.constructor")}} pour plus de détails.

Méthodes

{{jsxref("Function.prototype.apply()")}}
Cette méthode applique la fonction et pour cette fonction, this sera la valeur passée en argument (l'objet manipulé peut ainsi être différent de l'objet courant). Les arguments peuvent être passés grâce à un objet {{jsxref("Array")}}.
{{jsxref("Function.prototype.bind()")}}
Cette méthode crée un nouvelle fonction qui, lorsqu'elle est appelée, appelle cette fonction dans le contexte de la valeur fournie avec une suite d'arguments à utiliser avant ceux fournis à la nouvelle fonction.
{{jsxref("Function.prototype.call()")}}
Cette méthode applique la fonction, et pour cette fonction, this sera la valeur passée en premier arguments. Les arguments peuvent être passés tels quels dans les arguments suivants.
{{jsxref("Function.prototype.isGenerator()")}} {{non-standard_inline}}
Cette méthode renvoie true si la fonction est un générateur ; sinon elle renvoie false.
{{jsxref("Function.prototype.toSource()")}} {{non-standard_inline}}
Cette méthode renvoie une chaîne de caractères représentant le code source de la fonction. Elle surcharge la méthode {{jsxref("Object.prototype.toSource")}}.
{{jsxref("Function.prototype.toString()")}}
Cette méthode renvoie une chaîne de caractères représentant le code source de la fonction. Elle surcharge la méthode {{jsxref("Object.prototype.toString")}}.

Spécifications

Spécification Statut Commentaires
{{SpecName('ES1')}} {{Spec2('ES1')}} Définition initiale. Implémentée avec JavaScript 1.1.
{{SpecName('ES5.1', '#sec-15.3.5.2', 'Function.prototype')}} {{Spec2('ES5.1')}}  
{{SpecName('ES6', '#sec-function-instances-prototype','Function.prototype')}} {{Spec2('ES6')}}  
{{SpecName('ESDraft', '#sec-function-instances-prototype', 'Function.prototype')}} {{Spec2('ESDraft')}}  

Compatibilité des navigateurs

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

Voir aussi