Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Function : propriété length

Baseline Large disponibilité

Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.

>

La propriété de donnée length d'une instance de Function indique le nombre de paramètres attendus par la fonction.

Exemple interactif

function func1() {}

function func2(a, b) {}

console.log(func1.length);
// Résultat attendu : 0

console.log(func2.length);
// Résultat attendu : 2

Valeur

Un nombre.

Attributs de Function : propriété length
ÉcrivableNon
ÉnumérableNon
ConfigurableOui

Description

La propriété length d'un objet Function indique combien d'arguments la fonction attend, c'est-à-dire le nombre de paramètres formels :

En revanche, arguments.length est local à une fonction et indique le nombre d'arguments réellement passés à la fonction.

Le constructeur Function est lui-même un objet Function. Sa propriété de donnée length a pour valeur 1.

Pour des raisons historiques, Function.prototype est lui-même appelable. La propriété length de Function.prototype a pour valeur 0.

Exemples

>

Utilisation de la propriété length des fonctions

js
console.log(Function.length); // 1

console.log((() => {}).length); // 0
console.log(((a) => {}).length); // 1
console.log(((a, b) => {}).length); // 2 etc.

console.log(((...args) => {}).length);
// 0, le paramètre du reste n'est pas compté

console.log(((a, b = 1, c) => {}).length);
// 1, seuls les paramètres avant le premier avec
// une valeur par défaut sont comptés

console.log((({ a, b }, [c, d]) => {}).length);
// 2, chaque motif de déstructuration compte pour
// un seul paramètre

Spécifications

Spécification
ECMAScript® 2026 Language Specification>
# sec-function-instances-length>

Compatibilité des navigateurs

Voir aussi