Когда у меня есть код, который мне нужно выполнить несколько раз, я завершаю его функцией, поэтому мне не нужно повторять. Иногда, кроме того, необходимо выполнить этот код изначально при загрузке страницы. Сейчас я делаю так:
function foo() {
alert('hello');
}
foo();
Я бы предпочел сделать это следующим образом:
(function foo() {
alert('hello');
})();
Проблема в том, что это будет выполняться только при загрузке страницы, но если я попытаюсь вызвать ее в последующие моменты времени с помощью foo()
, это не сработает.
Я предполагаю, что это проблема с областью, но есть ли способ заставить себя выполнять функции, чтобы работать после вызова позже?