Если вы запустите этот код, я верю, что это даст вам ответ.
var noname = (function() {
function toto() {
console.log('running toto');
return 'returning toto';
}
console.log(toto());
return 'no name';
})();
console.log(noname);
Более длинный ответ следующий.
(function(){})();
Это называется IIFE (выражение, вызываемое мгновенно вызывается), которое оно создает и вызывает функцию сразу после ее создания. То, что вы размещаете в нем, содержится в этой функции. Это лучший способ создать частные переменные в ES5 Javascript. Как и все функции, вы можете возвращать вещи из IIFE и получать доступ к переменным, объявленным за пределами IIFE, но ничего извне снаружи, опять же создает личную область. Поскольку у вас есть возврат IIFE, он возвращает значение по умолчанию undefined.
Ваш вызов IEFE ничего не возвращает. – Bergi
Нет синтаксической ошибки, если бы она была, она была бы в консоли. –
Почему вы это делаете? – Bergi