Если вы не хотите назвать это автоматически вы должны поставить; как
var iCallMySelf = function(){
console.log("Hi there :D");
};
(function(){})
благодаря оборачивать функции ниже его получить вызов автоматически
всякий раз, когда у положить() после того, как функции, которую он называется так вот, если и использовать точку с запятой в следующем (функция() {}) является не используется iCallMyself
, но если и делать, как этот
var myFun = function()
{
console.log('Hii');
};
var x = myFun();
она будет называться и Привет будут напечатаны так, то же самое было в вашем коде. Надеюсь, вы понимаете
также, подобным образом будет называться
var myFun = function()
{
console.log('Hii');
};
var x = myFun(function(){});
и в вашем вопросе у используется та же ,, так что, когда я пишу функцию при определении хи можно сделать
var x = function(){console.log('Hii')}(function(){});
это как ваш вопрос был сделан ... в вашем вопросе iCallMyself не является функцией печати «Привет там: D», но он работает как переменная, а также не сохраняет возвращаемое значение функции, чтобы обеспечить значение iCallMyself вашей функции следует называть иначе, он не получит никакой ценности,
iCallMyself будет оставаться неопределенным, даже если его не функция может попробовать этот
var iCallMySelf = function(){
console.log("Hi there :D");
}
(function(){})
console.log(iCallMyself);
только его в иллюзию JavaScript, что мы думаем, что iCallMyself функция, но здесь его не
также в вашем вопрос, если u вызывает iCallMyself(); и будет получать сообщение об ошибке, потому что его не функция
как
попробовать это
var iCallMySelf = function(){
console.log("Hi there :D");
}
(function(){})
iCallMyself();
это даст ошибку, что не определено не является функцией, поскольку она не является функцией, кажется, только быть, но не на самом деле.
Так в чем же логика положить точку с запятой;
, когда у положить точку с запятой
var iCallMySelf = function(){
console.log("Hi there :D");
};
(function(){})
iCallMyself();
Теперь линия (функция() {}) не связано с iCallMyself это обернутую функцию и ничего теперь и может вызывать iCallMyself функция()
var x = function(){}();
так что теперь функция() {}() является исполняемым всякий раз, когда у вернуть его в переменной
var x = function(){};
и функция() {} не исполняемыми вар, то переменная будет содержать функцию
var x = function(){};()
и функция() {};() теперь() не является необходимым
Используйте точки с запятой! – Bergi
Возможный дубликат [Почему вам нужно вызывать анонимную функцию в одной строке?] (Http://stackoverflow.com/questions/1140089/why-do-you-need-to-invoke-an-anonymous-function -on-the-same-line) –
(функция() {}) интерпретируется как аргумент первой вышеприведенной функции. Упоминание имени функции с аргументами вызывает эту функцию (выполняет). Если вы хотите другое поведение, используйте точку с запятой между двумя выражениями. –