С учетом всего вышесказанного можно просто создать вложенную функцию для замены некоторого локализованного повторяющегося кода внутри функции (который будет использоваться только внутри родительской функции). Анонимная функция является прекрасным примером этого.
Кто-то может сказать, просто создать частные методы (или меньшие блоки кода) в классе, но это мутит воду, когда сверхспецифичная задача (которая является исключительной для родительского) должна быть модульной, но не обязательно доступной для остальная часть класса. Хорошей новостью является то, что если вам понадобится эта функция где-то еще, исправление будет довольно элементарным (переместите определение в более центральное место).
Вообще говоря, использование JavaScript в качестве стандарта для оценки других языков программирования на основе Си - плохая идея. JavaScript определенно является собственным животным по сравнению с PHP, Python, Perl, C, C ++ и Java. Конечно, есть много общего сходства, но мелкие, мельчайшие детали (ссылка JavaScript: Полное руководство, 6-е издание, главы 1-12 ), когда обращают внимание, делают основной JavaScript уникальным, красивым разные, простые и сложные одновременно. Это мои два цента.
Просто чтобы прояснить, я не говорю, что вложенные функции являются частными. Именно это вложение может помочь избежать беспорядка, когда что-то тривиальное необходимо модульно (и требуется только для родительской функции).