Анонимная функция не является функцией с именем «». Это просто функция без имени.
Как и любое другое значение в JavaScript, функции не нужно создавать имя. Хотя гораздо полезнее связать его с именем, как и с любым другим значением.
Но, как и любое другое значение, вы иногда хотите использовать его без привязки к имени. Это самопризывная модель.
Вот функция и число, не связанные, они ничего не делают и никогда не могут быть использованы:
function(){ alert("plop"); }
2;
Таким образом, мы должны хранить их в переменной, чтобы иметь возможность использовать их, как любое другое значение:
var f = function(){ alert("plop"); }
var n = 2;
Вы также можете использовать синтетический сахар для привязки функции к переменной:
function f(){ alert("plop"); }
var n = 2;
Но если их именование не требуется и это приведет к еще большей путанице и меньше читабельности, вы можете использовать их сразу же.
(function(){ alert("plop"); })(); // will display "plop"
alert(2 + 3); // will display 5
Здесь моя функция и мои числа не связаны с переменной, но они все еще могут использоваться.
Сказано, что это выглядит так, как будто вызывающая функция не имеет реального значения. Но вы должны иметь в виду, что разделитель области видимости JavaScript - это функция, а не блок ({}).
Таким образом, самопризывающаяся функция имеет то же значение, что и блок C ++, C # или Java. Это означает, что переменная, созданная внутри, не будет «вытекать» за пределы области видимости. Это очень полезно в JavaScript, чтобы не загрязнять глобальный охват.
См. Здесь: http://msdn.microsoft.com/en-us/library/d9w023sx.aspx
Это очень просто в Visual Studio - вы просто добавляете URL-адрес веб-ссылки, и он генерирует прокси заглушка для вас.
Проще всего использовать «Добавить ссылку на службу» и указать на WSDL. Он сгенерирует для вас прокси-классы, включая метод прокси, который должен соответствовать заданной вами сигнатуре метода.
Посмотрите, найдете ли вы Как использовать веб-службу полезным.
]