Spec-Zone.ru › JavaScript

Функция: length

Базовый уровень Широко доступен

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.

Свойство данных length экземпляра Function указывает количество параметров, ожидаемых функцией.

Попробуйте

function func1() {}

function func2(a, b) {}

console.log(func1.length);
// Expected output: 0

console.log(func2.length);
// Expected output: 2

Значение

Число.

Атрибуты свойства Function: length
Записываемый нет
Перечислимый нет
Настраиваемый да

Описание

Свойство length объекта Function указывает, сколько аргументов ожидает функция, то есть количество формальных параметров:

  • Учитываются только параметры перед первым параметром с значением по умолчанию.
  • Шаблон деструктуризации считается одним параметром.
  • Остаточные параметры исключены.

В отличие от этого, arguments.length является локальным для функции и предоставляет количество аргументов, фактически переданных функции.

Конструктор Function сам по себе является объектом Function. Его свойство данных length имеет значение 1.

По историческим причинам Function.prototype сам является вызываемым. Свойство length объекта Function.prototype имеет значение 0.

Примеры

Использование длины функции

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, rest parameter is not counted

console.log(((a, b = 1, c) => {}).length);
// 1, only parameters before the first one with
// a default value are counted

console.log((({ a, b }, [c, d]) => {}).length);
// 2, destructuring patterns each count as
// a single parameter

Спецификации

Спецификация
ECMAScript® 2027 Language Specification
# sec-function-instances-length

Совместимость с браузерами

Настольные компьютеры Мобильные устройства Сервер
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
length
1
12
1
3
1
18
4
10.1
1
1.0
4.4
1
1.0.0
1.0
0.10.0
configurable_true
43
12
37
30
10
43
37
30
10
4.0
43
10
1.0.0
1.0
4.0.0

См. также

  • Function

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/length

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API