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

Пример

<b>eval(&quot;1+2&quot;); // Вернет 3</b>

<b>// Этот фрагмент использует клиентские JavaScript-методы для запроса выражения </b>

<b>// от пользователя и вывода результатов его вычисления.</b>

<b>// Подробности см. в описаниях клиентских методов Window.alert() и Window.рrompt(). </b>

<b>try {</b>

<b>  alert(&quot;Результат: &quot; + eval(prompt(&quot;Введите выражение:&quot;,&quot;&quot;)));</b>

<b>}</b>

<b>  catch(exception) { alert(exception);</b>

<b>}</b>

EvalError

генерируется при некорректном использовании eval() Objects Errors EvalError

Конструктор

<b>new EvalError()</b>

<b>new EvalErroг(сообщение)</b>

Аргументы

сообщение Необязательное сообщение об ошибке с дополнительной информацией об исключении. Если этот аргумент указан, он принимается в качестве значения свойства

<b>message</b>
объекта
<b>EvalError</b>
.

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

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

<b>EvalError</b>
. Если задан аргумент сообщение, объект
<b>Error</b>
возьмет его в качестве значения своего свойства
<b>message</b>
; в противном случае в качестве значения этого свойства будет использована строка по умолчанию, определенная реализацией. Когда конструктор
<b>EvalError()</b>
вызывается как функция (без оператора
<b>new</b>
), он ведет себя точно так же, как при вызове с оператором
<b>new</b>
.

Свойства

<b>message</b>
Сообщение об ошибке с дополнительной информацией об исключении.

В этом свойстве хранится строка, переданная конструктору, или строка по умолчанию, определенная реализацией. Подробности см. в статье с описанием свойства

<b>Error.message</b>
.

<b>name</b>
Строка, определяющая тип исключения. Для всех объектов
<b>EvalError</b>

значение этого свойства равно «EvalError».

Описание

Экземпляры класса

<b>EvalError</b>
могут создаваться, когда глобальная функция
<b>eval()</b>
вызывается с любым другим именем. Ограничения на способы вызова функции
<b>eval()</b>
рассматриваются в ее описании. Информация о генерации и перехвате исключений приводится в статье, посвященной классу Error.

См. также

Error, Error.message, Error.name

Function

Function

функция JavaScript (Object->Function)

Синтаксис

<b>function имя_функции(имена_аргументов) // Инструкция определения функции {</b>

<b>  тело</b>

<b>}</b>

<b>function(имена _аргументов) { тело } // Литерал неименованной функции</b>

<b>имя_функции{значения_аргументов) // Вызов функции</b>

Конструктор

<b>new Function(имена_аргументов..., тело)</b>

Аргументы

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

Любое количество строковых аргументов, которые присваивают имя одному или нескольким аргументам создаваемого объекта

<b>Function</b>
.

тело

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

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

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

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

Исключения

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

Свойства

<b>arguments[]</b>

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

<b>caller</b>

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

<b>length</b>

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

<b>prototype</b>

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

Методы

<b>apply()</b>

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

<b>bind()</b>

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

<b>call()</b>

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

<b>toString()</b>

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

Описание

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

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