Нужно ли в javascript думать о private свойствах и методах?
В питоне вообще нет модификаторов доступа, и все поля доступны по прямому доступу. И ничего страшного в этом нет. В js такая же ситуация. Более того, все эти заморочки с private заставляют зачастую генерить кучу геттеров и сеттеров, которые будут нарушать инкапсуляцию. Так что заморачиваться не стоит, ведь даже в яве можно с помощью ухищрений добраться до приватных полей через рефлексию.
Решение может быть таким: обозначать какие-то внутренние переменные и методы с символа подчёркивания. Они по-прежнему будут публичными, но для разработчика это знак, что такое поле не понадобится при использовании твоей библиотеки. А методы и переменные, необходимые только для одного публичного метода какого-нибудь класса можно делать локальными, чтобы не плодить кучу  полей.
Инкапсуляция нужна.
largescalejs.ru