Function : propriété length
Baseline
Widely available
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 | |
|---|---|
| Écrivable | Non |
| Énumérable | Non |
| Configurable | Oui |
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 :
- Seuls les paramètres situés avant le premier ayant une valeur par défaut sont comptés.
- Un motif de décomposition compte pour un seul paramètre.
- Le paramètre du reste est exclu.
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
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
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-function-instances-length> |
Compatibilité des navigateurs
Voir aussi
- L'objet
Function