Зачем нужен конструктор если функция может создать и вернуть объект?
Вобщем да, это можно назвать "синтаксическим сахаром", а более официально это звучит так:
"Данная конструкция(new) гораздо удобнее и читабельнее, чем многократное создание литерала объекта.

Это и является основной целью конструкторов – реализовать код для многократного создания однотипных объектов."
Источник
При создании через конструктор, будет просто объект с методами.
Используая классы, можно использовать всю мощь ООП, например наследование, интерфейсы и т.п.
https://learn.javascript.ru/class-inheritance
https://codecraft.tv/courses/angular/es6-typescrip...