Приложение не запускается после развертывания на сервере Tomcat 7.0.90: ошибка 404 - не найдена

Насколько мне известно, но вы можете имитировать его, сначала инициализируя функцию null, а затем заменяя реализацию позже.

var foo = null;
var bar = function() { alert(foo()); } // Appear to use foo before definition

// ...

foo = function() { return "ABC"; } /* Define the function */
bar(); /* Alert box pops up with "ABC" */

Этот трюк похож на трюк C # для реализации рекурсивный lambdas, как описано здесь .

Единственный недостаток заключается в том, что если вы do используете foo до его определения, вы получите сообщение об ошибке для попытки вызвать null, как если бы это была функция, а не более описательное сообщение об ошибке. Но вы ожидаете получить сообщение об ошибке для использования функции до ее определения.

1
задан João Rafael Bonilha 18 March 2019 в 12:33
поделиться