Что такое объект `arguments`?

Псевдомассив arguments — это объект, доступный внутри функций в JavaScript, который содержит все переданные аргументы.

Короткий ответ

Что ответить на собеседовании

Псевдомассив arguments — это объект, доступный внутри функций в JavaScript, который содержит все переданные аргументы. Он похож на массив, так как имеет числовые индексы и свойство length, но не является полноценным массивом: у него нет методов массива, таких как forEach, map, filter и т.д.

Подробный разбор

Ответ с пояснениями

Псевдомассив arguments — это объект, доступный внутри функций в JavaScript, который содержит все переданные аргументы. Он похож на массив, так как имеет числовые индексы и свойство length, но не является полноценным массивом: у него нет методов массива, таких как forEach, map, filter и т.д.

Отличия от обычного массива:

  • arguments не наследует методы массива.
  • Не поддерживает методы массива напрямую.
  • Можно преобразовать в настоящий массив, например, с помощью Array.from или spread-оператора.

Пример:

function example() {
  console.log(arguments.length); // количество аргументов
  // arguments.forEach(...) вызовет ошибку
  const argsArray = Array.from(arguments);
  argsArray.forEach(arg => console.log(arg));
}
example(1, 2, 3);

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку