Function.length
Властивість length
зазначає кількість параметрів, очікуваних функцією.
The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone https://github.com/mdn/interactive-examples and send us a pull request.
Атрибути поля Function.length |
|
---|---|
Доступний для запису | ні |
Доступний для переліку | ні |
Доступний для налаштування | так |
Опис
length
- це властивість функціонального об'єкта, вона вказує, скільки аргументів очікує функція, тобто кількість формальних параметрів. Ця кількість не включає залишкові параметри (en-US), і рахує лише параметри до першого, що має значення по замовчуванню. Для контрасту, властивість arguments.length
є локальною властивістю функції, і надає кількість аргументів, що фактично передані у функцію.
Властивість конструктора Function
Конструктор Function
теж є об'єктом Function
. Його властивість length
має значення 1. Атрибути властивості такі: Writable (доступний для запису): false
, Enumerable (доступний для переліку): false
, Configurable (доступний для налаштування): true
.
Властивість об'єкта прототипу Function
Властивість об'єкта прототипу Function
має значення 0.
Приклади
console.log(Function.length); /* 1 */
console.log((function() {}).length); /* 0 */
console.log((function(a) {}).length); /* 1 */
console.log((function(a, b) {}).length); /* 2 і т.д. */
console.log((function(...args) {}).length);
// 0, залишкові параметри не рахуються
console.log((function(a, b = 1, c) {}).length);
// 1, рахуються тільки параметри, розташовані до першого,
// який має значення за замовчуванням
Специфікації
Специфікація | Статус | Коментар |
---|---|---|
ECMAScript 1st Edition (ECMA-262) | Standard | Початкове визначення. Реалізоване у JavaScript 1.1. |
ECMAScript 5.1 (ECMA-262) The definition of 'Function.length' in that specification. |
Standard | |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'Function.length' in that specification. |
Standard | Атрибут configurable цієї властивості тепер дорівнює true . |
ECMAScript (ECMA-262) The definition of 'Function.length' in that specification. |
Living Standard |
Сумісність з веб-переглядачами
BCD tables only load in the browser