A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Function/Function below:

Конструктор Function() - JavaScript | MDN

Конструктор Function()

Baseline Widely available

Конструктор Function создаёт новый объект Function. Вызов конструктора напрямую позволяет создавать функции программным путём, однако такой способ представляет угрозу для безопасности, а также несёт разные (хотя не такие значительные) проблемы с производительностью при использовании с Global_Objects/eval. Однако в отличие от eval, конструктор Function создаёт функции, выполняемые только в глобальной области видимости.

Интерактивный пример
const sum = new Function("a", "b", "return a + b");

console.log(sum(2, 6));
// Expected output: 8
Синтаксис
new Function(arg1, functionBody)
new Function(arg1, arg2, functionBody)
new Function(arg1, ... , argN, functionBody)
Параметры
arg1, arg2, ... argN

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

Поскольку параметры разбираются так же, как и объявления функций, допускается использование пробелов и комментариев. Например: "x", "theValue = 42", "[a, b] /* numbers */" — или "x, theValue = 42, [a, b] /* numbers */". ("x, theValue = 42", "[a, b]" также будет правильным, хотя трудно читаемым).

functionBody

Строка, содержащая инструкции JavaScript, составляющие определение функции.

Описание

Объекты Function, созданные конструктором Function, разбираются при создании функции. Определение функции при помощи выражения function или инструкции function и вызова её внутри вашего кода более эффективно, поскольку такие функции разбираются вместе с остальным кодом.

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

Вызов конструктора Function как функции (без использования оператора new) имеет тот же самый эффект, что и вызов его как конструктора.

Примеры Пример: указание аргументов в конструкторе Function

Следующий код создаёт объект `Function, который принимает два аргумента.

// Пример может быть запущен непосредственно в вашей консоли JavaScript

// Создаём функцию, принимающую два аргумента, и возвращающую их сумму
const adder = new Function("a", "b", "return a + b");

// Вызываем функцию
adder(2, 6);
// 8

Аргументы "a" и "b" являются именами формальных аргументов, которые используются в теле функции, "return a + b".

Спецификации Совместимость с браузерами Смотрите также

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4