В теме собственно сам вопрос.
Но поясню, в коде на javascript часто используется изоляция какого-то пространства переменных от внешнего кода, но вот что означают скобки после тела фунции в этом блоке?
Как будто это какие-то аргументы, но не понятно куда тогда они передаются?
Вот пример из куска кода для логирования через Facebook:
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
То есть вот идёт код в начале со скобки и потом после тела функции идут опять круглые скобки и начинается со слов document, 'script'. Что это означет и что делает?