Чтение онлайн

на главную - закладки

Жанры

JavaScript. Подробное руководство, 6-е издание
Шрифт:

Строка, определяющая тело функции. Она может содержать любое количество инструкций на языке JavaScript, разделенных точками с запятой, и ссылаться на любые имена аргументов, указанные ранее в конструкторе.

Возвращаемое значение

Вновь созданный объект

Function
. Вызов функции приводит к выполнению JavaScript-кода, составляющего аргумент тело.

Исключения

SyntaxError
Указывает, что в аргументе тело или в одном из аргументов из перечня имена_аргументов имеется синтаксическая ошибка.

Свойства

arguments[]

Массив аргументов, переданных функции. Признано устаревшим.

caller

Ссылка на объект Function, вызвавший данную функцию, или null, если функция была вызвана из программного кода верхнего уровня. Признано устаревшим.

length

Число именованных аргументов, указанных при объявлении функции.

prototype

Объект, определяющий свойства и методы конструктора, совместно используемые всеми объектами, созданными с помощью этого конструктора.

Методы

apply

Вызывает функцию как метод указанного объекта, передавая ей указанный массив аргументов.

bind

Возвращает новую функцию, которая вызывает данную как метод указанного объекта с указанными аргументами.

call

Вызывает функцию как метод указанного объекта, передавая ей указанные аргументы.

toString

Возвращает строковое представление функции.

Описание

Функция в языке JavaScript - это фундаментальный тип данных. В главе 8 рассказывается, как определять и использовать функции, а в главе 9 рассматриваются близкие темы, касающиеся методов, конструкторов и свойства prototype функций. Подробности см. в этих главах. Обратите внимание: функциональные объекты могут создаваться с помощью описанного здесь конструктора

Function,
но это неэффективно, поэтому в большинстве случаев предпочтительным способом определения функции является инструкция определения функции или функциональный литерал.

В JavaScript 1.1 и более поздних версиях тело функции автоматически получает локальную переменную по имени

arguments
, которая ссылается на объект
Arguments
. Этот объект представляет собой массив значений, переданных функции в качестве аргументов. Не путайте его с устаревшим свойством
arguments[],
описанным ранее. Подробности см. в статье об объекте
Arguments
.

Function.apply

вызывает функцию как метод объекта

Синтаксис

функция, apply(этот_объект, аргументы)

Аргументы

этот_объект Объект, к которому должна быть применена функция. В теле функции аргумент этот_объект становится значением ключевого слова this. Если указанный аргумент содержит значение null, используется глобальный объект.

аргументы Массив значений, которые должны передаваться функции в качестве аргументов.

Возвращаемое значение

Значение, возвращаемое при вызове функции.

Исключения

ТуреЕrror
Генерируется, если метод вызывается для объекта, не являющегося функцией, или с аргументом аргументы, не являющимся массивом или объектом Arguments.

Описание

Метод

apply
вызывает указанную функцию, как если бы она была методом объекта, заданного аргументом этот_объект, передавая ей аргументы, которые содержатся в массиве аргументы. Он возвращает значение, возвращаемое функцией. В теле функции ключевое слово this ссылается на объект этот_объект.

Аргумент аргументы должен быть массивом или объектом

Arguments
. Если аргументы должны передаваться функции в виде отдельных аргументов, а не в виде массива, следует использовать вызов
Function.call.

Пример

// Применяет метод Object.toStгing, предлагаемый по умолчанию для объекта,

// переопределяющего его собственной версией метода. Обратите внимание

// на отсутствие аргументов.

Object.prototype.toString.apply(o);

// Вызывает метод Math.maxO, используемый для нахождения максимального элемента

// в массиве. Обратите внимание: в этом случае первый аргумент не имеет значения,

var data = [1,2,3,4,5,6,7,8];

Math.max.apply(null, data);

См. также

Function. call

Function.arguments[] (устарело)

аргументы, переданные функции

Синтаксис

функция.arguments [і]

функция.arguments, length

Описание

Свойство

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

Поделиться:
Популярные книги

Личный аптекарь императора. Том 2

Карелин Сергей Витальевич
2. Личный аптекарь императора
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Личный аптекарь императора. Том 2

Запечатанный во тьме. Том 1. Тысячи лет кача

NikL
1. Хроники Арнея
Фантастика:
уся
эпическая фантастика
фэнтези
5.00
рейтинг книги
Запечатанный во тьме. Том 1. Тысячи лет кача

Первый среди равных. Книга VI

Бор Жорж
6. Первый среди Равных
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Первый среди равных. Книга VI

Черный Маг Императора 12

Герда Александр
12. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Черный Маг Императора 12

Первый среди равных. Книга V

Бор Жорж
5. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Первый среди равных. Книга V

Страж Кодекса. Книга VII

Романов Илья Николаевич
7. КО: Страж Кодекса
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Страж Кодекса. Книга VII

Бастард Императора. Том 14

Орлов Андрей Юрьевич
14. Бастард Императора
Фантастика:
городское фэнтези
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Бастард Императора. Том 14

Викинг

Мазин Александр Владимирович
1. Викинг
Приключения:
исторические приключения
8.92
рейтинг книги
Викинг

Газлайтер. Том 9

Володин Григорий
9. История Телепата
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Газлайтер. Том 9

Чайлдфри

Тоцка Тала
Любовные романы:
современные любовные романы
6.51
рейтинг книги
Чайлдфри

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Последний реанорец. Том I и Том II

Павлов Вел
1. Высшая Речь
Фантастика:
фэнтези
7.62
рейтинг книги
Последний реанорец. Том I и Том II

Чужак из ниоткуда

Евтушенко Алексей Анатольевич
1. Чужак из ниоткуда
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Чужак из ниоткуда

Рядовой. Назад в СССР. Книга 1

Гаусс Максим
1. Второй шанс
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Рядовой. Назад в СССР. Книга 1