Изначально JS создан действительно для front-end'а, то есть того, что видит пользователь на сайте. Формы, popup'ы и т.д. Но сейчас JS можно использовать абсолютно везде.
Node.js, Next.js - хотите писать back-end-часть на том же языке? Пожалуйста.
ReactNative.js - хотите сделать фронт для мобильных устройств? Пожалуйста, еще и компилируется это в прекрасно читаемый и работающий "нативный" (родной) язык для мобилок.
Можно конечно писать и приложения для локальных машин на JS, но я таких библиотек не искал и не советую :) Причина проста: быстродействие. Как ни оптимизируй код JS, а тот же C# или Java обработает множество вычислений быстрее.
Преимущества JS:
Недостатки JS напрямую следуют из достоинств:
Резюмирую:
JS, как и любой другой язык, является инструментом. И инструмент хорошо применять там, где он реально нужен. Вы же не закручиваете гайки молотком (по-хорошему). Так и здесь - front-end - это основная стезя JS. В остальных местах его использовать "можно, но не нужно". Разве что если не хочется нанимать в команду никого, кроме JS'еров.
backend - это typescript n node js
а что делать, когда на сайте процент этих скриптов больше чем основной контент?