Каждая функция в яваскрипт является объектом класса Function.
Все аргументы, переданные функции, интерпретируются как имена параметров для создаваемой функции, в порядке их перечисления.
Вызов конструктора Function как функции работает так же, как вызов с new. Иначе говоря, оператор new при вызове Function необязателен.
Пример: Пример создания функции
var multiply = new Function("x", "y", "return x * y")
// или так:
var multiply = new Function("x,y", "return x * y")
var theAnswer = multiply(7, 6);
Автор: yolka, дата: 29 декабря, 2009 - 00:18
#permalink// более интересные пример работы объекта Function, в качестве данных:
function attr1(x, y) { // определяем функцию и ее механизм выполнения return x + y; } function attr2(x,y) { // определяем функцию и ее механизм выполнения return x * y; } /* передаем в качестве аргументов вышеопределенные функции и возвращаем значение для двух операндов */ function init(define, argument1, argument2){ return define(argument1, argument2); } document.write(init(attr1, init(attr1, 5, 5), init(attr2, 5, 5))); // вызываемАвтор: Гость (не зарегистрирован), дата: 3 июля, 2011 - 18:47
#permalinkВообще нужно добавить в эту же статью три способа создания функций:
1)Через new (и Function должно начинаться с большой буквы)
2)анонимные функции function () {} (function с маленькой буквы)
3)обычные function func () {}
Упомянуть также про переменную arguments.
Неполная статья, учитывая что на неё прямая ссылка из Справочника по JavaScript.
Автор: sawa (не зарегистрирован), дата: 5 января, 2012 - 21:09
#permalinkЯ недавно изучаю JS) Почему перед названиями параметров функции отсутствует var?
К примеру:
function attr1(var x,var y) { return x + y; }Автор: Андрей+ (не зарегистрирован), дата: 7 июля, 2012 - 12:49
#permalinkМожете объяснить подсказать литературу вот такого синтаксиса (function() {})();
Автор: V@dos (не зарегистрирован), дата: 28 октября, 2012 - 10:23
#permalinkлюди нужна помощь, плиз, подскажите как сделать функцию чтобы при нажатии на кнопку увеличивалась ширина div, каждый раз
Автор: shkoder, дата: 2 мая, 2013 - 18:18
#permalinkАвтор: cementovoz (не зарегистрирован), дата: 7 марта, 2014 - 11:42
#permalinkЗабыли про Function.propotype.bind - смена контекста (this) в функции
function a () {
console.log(this.b)
}
a() // undefined
var c = a.bind({b:42})
c() // 42
Автор: Botu (не зарегистрирован), дата: 4 марта, 2015 - 20:05
#permalinkКто-нибудь знает, что за конструкция
!function - в самом начале jquery используется.
Автор: botu (не зарегистрирован), дата: 5 марта, 2015 - 16:00
#permalinkОпытным путем нашел ....
!function(a,b)
{
}
(arguments);
Это практически тоже самое, что и просто
(
function(a,b)
{
}
)(arguments);
По второму варианту только и очень много вопросов и ответов было в инет...
А вот по варианту с !function(){}(); почему то ничего нету ...
Нашел чисто по наитью, точно что это такое и в чем разница - не знаю ...
Если кто знает - отпишитесь плиз ...
Автор: Гость (не зарегистрирован), дата: 24 сентября, 2015 - 17:42
#permalinkВот здесь все это очень подробно описано https://learn.javascript.ru/closures-module
Автор: Гость (не зарегистрирован), дата: 13 марта, 2018 - 17:35
#permalinkлюди подскажите нормальный справочник по js чтобы время на этом конченном сайте не тратить