Первоначально JavaScript был простым языком для браузеров: никаких классов, модулей или типов. Но с годами он превратился в платформу. Сначала появились фреймворки вроде jQuery и Backbone. Потом — Node.js, позволивший JS выйти за пределы браузера. Сейчас — это язык, на котором пишут клиент, сервер, десктопные и мобильные приложения.
ES6 и последующие стандарты кардинально изменили синтаксис. Появились let, async/await, стрелочные функции и модули. JS стал ближе к "настоящим" языкам — но при этом унаследовал хаос десятилетий назад.