Что конкретно учить в js для web-разработки?
==============================================

 Всем доброго времени суток и извиняюсь за глупый вопрос.  

1)Учу js. Функции, циклы, условия. Но всё не могу допереть зачем это всё. Я уже кучу времени изучаю тему за темой и всё не могу допереть зачем мне это всё. Я освоил html и css и понял, что без js всё бесполезно, так как именно на js сайт становится больше, чем обертка. Но изучая тему за темой я так и не нахожу ответа на свой вопрос. Я до сих пор не знаю как это всё применить на сайте. Чтобы например человек мог оставить отзыв, сообщение, чтобы делать крутые параллаксы, интерактивные иконки-меню, вести учет товаров и т.д  

Суть вопроса: Что конкретно мне нужно понимать в js, а то может я перепутал и взялся не за то, что требовалось для моих задач? 

 Здравствуйте. Если вы хотите стать фронт-енд разработчиком, то вам, действительно нужно изучать JS и весь современный стек технологий. Коллеги выше все написали.  

  

С другой стороны, если ваша задача создавать сайты, то здесь применение JS вполне конкретным: создание слайдеров, табов / аккордеонов, поп-апов, сложных меню, параллакса / анимации при прокрутке и т.д. Причем выигрышной стратегией будет не писать каждое решение с нуля, а использовать готовые библиотеки (slick slider, bootsrap и т.д.).   

  

Если правильно понял суть вопроса, то для того чтобы сайт стал "больше чем обертка" нужно изучать современные CMS. В частности WordPress. Научившись интегрировать вашу верстку в WordPress вы получите сразу кучу бонусов:  

- вместо html-страничек на выходе полноценный сайт  

- удобный интерфейс для работы с контентом  

- готовые решения для отзывов, сообщений, каталога товаров и т.д.  

- понятно где / как / для чего применять JS 

>   
> 
> Что конкретно мне нужно понимать в js, а то может я перепутал и взялся не за то, что требовалось для моих задач?  
> 
> 

  

1. Синтаксис js на уровне ES6. Тут и циклы, и условия и прочее.  

2. Для фронтеда, бонусом к этому надо ещё изучить бразереое апи. В первую очередь - DOM  

3. Для бэкенда - nodejs  

  

Ну и в обоих случаях нужно понимать, как устроен HTTP 

 JS выполняется в браузере. Чтобы оставлять отзывы, сообщения и т.д. нужно всё это записывать в базу данных, которая находится на сервере, там же где и сам сайт. В JS для этого используется NodeJS, не использовал но вроде это так. Мне кажется легче разобраться на примере с PHP, а потом переходит на NodeJS.  

  

HTMLAcademy - классные курсы, можно понять что, где и как использовать, бесплатных курсов хватит думаю.  

FructCode тоже можно пройти. 

 Node.js, Express, понимать как работать с АПИ, что такое https, DOM для начала. Обычное консольное программирование пригодиться в любом случае, если конечно ты не хочешь заниматься просто добавлением фронт функционала, а разрабатывать какой-либо сервис, к примеру тот же вывод товаров не сделать без циклов 

 Банально, ответы на этот вопрос и комменты выведутся через цикл. Ваша надпись "Автор вопроса" через if.  

Через функцию посчитается цифра количества ответов на вопрос.  

  

Фронтенд это просто шаблон. Принимает данные в json и выдает интерфейс.   

Либо если без spa, возьмем просто верстку. Тогда страницу сгенерит бекенд. А на js/jquery останется мелочи вроде слайдеров и отправки форм.  

  

Если хотите делать сайт полностью нужен еще бекенд, вся логика вроде авторизации и управления данными находится там.   

  

Еще на чистых языках никто готовый проект не пишет. Так же как автомобили собираются из запчастей. Сайты собираются из готового набора функционала, который нужен в каждом проекте - фреимворка. На фронте это vue, react, angular. В бекенде - laravel, symfony.  

  

  

Читаете это до середины, переходите к фреимворкам. Параллельно дочитываете до конца.  

  

По фреимворку читаете документацию, потом ищите книги/курсы все что есть на русском, изучаете, практикуетесь.  

  

Книги по программированию тоже читаете в процессе, чистый код, ооп, архитектура и вот это все. Они гуглятся.