Это может быть глупый вопрос, но я повсюду искал и приближался к SO в качестве последнего средства. Мои сомнения функция IIFE обычно выглядит следующим образомПередача значений в функцию IIFE
var me = (function() { /*code*/})();
me();
я не видел какой-либо код, который имеет переменные передающиеся в него до сих пор. Возможно ли передать значения функции IIFE? Я уже пробовал использовать
var Person = (function(name,age){
this.name = name;
this.age = age;
}());
Person("Bob Smith", 30);
который дает мне неопределенную ошибку.
Итак, есть ли способ передать эти значения в IIFE или его следует избегать?
Почему вы используете IFEE для определения конструктора? По крайней мере, вы должны вернуть функцию! В вашем случае Person возвращает undefined, вы не можете использовать его как конструктор. –
Спасибо, я все еще очень смущен, когда следует использовать IIFE. – Bazinga777
IIFE - это функция, которая мгновенно вызывается. Вы можете установить свои параметры в самом ИИФ: '(function (x) {console.log (x);}) (123)' будет записывать 123, но выполняет 'var f = function (x) {console.log (x);}; f (123) 'производит ** точно такой же результат ** –