Я бы ещё сюда добавил асинхронные действия, в частности, общение с сервером. Ответ от сервера может идти очень долго и если мы это делаем в интервале, то может получиться так, что мы ещё не получили ответ на первый запрос, а уже делаем следующий.
Сергей Соколов, ни в чём, просто нелюблю собирать "мусор" в регулярке, если есть адекватная возможность подобрать только то, что надо.
Хотя да, я забыл уже лишние скобки убрать, поправил.
Не можно, это бесполезная проверка.
А что мешает не придумывать велосипед с квадратными колёсами?
К счастью, до самого жса уже докатились современные возможности и в нём есть опшинал чейнинг.
if(APP?.config?.env?.stage === 'dev')