02.ii Arguments object
В теле функции есть специальный идентификатор arguments
(неявный объект), который ссылается на объект Arguments
, присутствующий в вызове каждой функции. Объект Arguments
– это объект, подобный массиву, позволяющий извлекать переданные функции значения по их номерам, а не по именам. JavaScript-функции при помощи arguments
могут быть написаны таким образом, чтобы работать с любым количеством аргументов.
Основные свойства:
Элементы массива
arguments
позиционно соответствуют переданным аргументам в функцию.В нестрогом режиме изменяя значение в
arguments
меняется и значение локальной переменной. В строгом это запрещено.Свойство
arguments.length
определяет количество аргументов фактически переданных при вызове функции (стоит отличать от свойстваlength
самой функции - там это число параметров).Начиная c ES6
arguments
является итерируемым.
В ES6 стоит использовать оператор spread
вместо arguments
. Заметим, что rest
— настоящий массив, с методами map
, forEach
и другими, в отличие от arguments
.
Last updated
Was this helpful?