Без JS сайт аналогичен распечатанной картинке. Есть ховеры, есть анимация, но это украшательства, а функционально он просто показывает тебе что-то и никак не может обрабатывать то, что ты с ним делаешь. И даже добавление товара в корзину приведёт к перезагрузке страницы. Изменение количества товара тоже приведёт к перезагрузке, даже если у тебя input type=number. Кроме того, невозможно будет обновить страницу при изменении этого input, нужна будет кнопка "пересчитать с новыми значениями".
В современных сайтах - практически для всего. JS может добавить интерактивности сайту, может делать асинхронные соединения с сервером, может делать клиентские редиректы, может на лету менять DOM, может... Да проще сказать, чего он не может. JS не может создавать и вносить изменения в существующие файлы. Для этого существуют серверные языки. Все остальное на нем возможно.