This would be an IIFE with parameters:
(function (a, b) {
alert(a + b);
}('hello', ' world'));
What you seem to be doing, as others said, is a constructor, so there's no need for them there.
You could do a constructor this way if you wanted:
function Person(name, age) {
this.name = name;
this.age = age;
}
var bob = new Person('Bob Smith', 30);
You could do an anonymously invoked constructor, but that's pointless since it's a one-use type of deal, and you wouldn't need a constructor for that.