Я очень новичок в Javascript, и я читал о closures on MDN. Хотя я понял первые два фрагмента кода по этой ссылке, меня смущает синтаксис, использованный в третьем примере, который я скопировал здесь.Новичок: Пояснение Пример закрытия Javascript на MDN
var getCode = (function(){
var secureCode = "0]Eal(eh&2";
return function() {
return secureCode;
};
})();
getCode(); // Returns the secureCode
Какова цель оберточной внешнюю функцию в скобках следуют пустые скобки и точка с запятой? Что означает этот синтаксис или что он служит? Почему бы не написать его следующим образом?
var getCode = function() {
var secureCode = "0]Eal(eh&2";
return function() {
return secureCode;
}
};
getCode(); // Returns the secureCode
Ответ на ваш первый вопрос: ** нет **. В первом наборе круглых скобок есть функция; это не то же самое (вообще), поскольку в круглых скобках отсутствует * ничего *. – Pointy
Если вы нажмете F12, чтобы открыть инструменты dev, и вставьте в свой первый пример, вы получите синтаксическую ошибку – acbabis
ребята, спасибо. Я просто обновил свой вопрос для ясности. Является ли моя версия фрагмента кода не той же целью, что и исходный фрагмент? – katboo