La propriété length
définit le nombre d'arguments attendus par la fonction.
Attributs de Function.length |
|
---|---|
Écrivable | Non |
Énumérable | Non |
Configurable | Oui |
Description
length
est une propriété des fonctions qui indique le nombre d'arguments attendus par la fonction (ce qui correspond au nombre d'arguments formellement déclarés). Cette quantité n'inclue pas les paramètres du reste et ne compte que les paramètres situés avant le premier paramètre avec une valeur par défaut. Cette propriété est différente de arguments.length
qui est locale à la fonction et qui décrit le nombre d'arguments réellement passés à la fonction.
Propriété du constructeur Function
Le constructeur Function
est lui-même un objet Function
. Sa propriété length
vaut 1. Les attributs de cette propriété sont : Écrivable : false
, Énumérable : false
, Configurable : true
.
Propriété du prototype de Function
La propriété length
du prototype de Function
vaut 0.
Exemples
console.log(Function.length); /* 1 */ console.log((function() {}).length); /* 0 */ console.log((function(a) {}).length); /* 1 */ console.log((function(a, b) {}).length); /* 2 etc. */ console.log((function(...args) {}).length); // 0, le paramètre du reste n'est pas compté console.log((function(a, b = 1, c) {}).length); // 1, seuls les paramètres avant les valeurs par // défaut sont comptés
Spécifications
Spécification | État | Commentaires |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Définition initiale. Implémentée avec JavaScript 1.1. |
ECMAScript 5.1 (ECMA-262) La définition de 'Function.length' dans cette spécification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'Function.length' dans cette spécification. |
Standard | L'attribut configurable de cette propriété vaut true désormais. |
ECMAScript 2017 Draft (ECMA-262) La définition de 'Function.length' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Fonctionnalité | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Support simple | (Oui) | (Oui) | (Oui) | (Oui) | (Oui) |
Configurable : true |
? | 37 (37) | ? | ? | ? |
Fonctionnalité | Android | Chrome pour Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Support simple | (Oui) | (Oui) | (Oui) | (Oui) | (Oui) | (Oui) |
Configurable : true |
? | ? | 37.0 (37) | ? | ? | ? |