У меня стоял этот вопрос достаточно остро. На самом деле все достаточно просто)
Факты:
1. При самообучении смотрел YDNJS / Hexlet.io / Codewars / Codepen.io - только практика с изучением теории,
изучать JS без моментальной практики - большая ошибка. Нужно дебажить и смотреть как это работает, экспериментировать.
2. Приступив на работе к достаточно сложной задаче и изучая все подряд, получая постепенно review кода - я за 1.5 месяца загрузил в себя очень много материала и дальше я почувствовал определенную легкость в изучении материала. Ты всегда можешь понять при общении с коллегами - что актуально, как и что изучать в данный момент времени.
3. Если возникает "умственная вялость" - когда смотришь на event и не понимаешь, что происходит. Бери перерыв. 10 минут - 20 минут или переключайся на другие задачи, ты все успеешь. Сон - питание - спорт. (обрати большое внимание на эти факторы)
4. JS не изучается за 3 месяца даже самым лютым бойцом в этом направлении. Он действительно сложнее, чем можно себе это представить. Многие знают JS на поверхностном уровне.
5. Не бойся задавать 'глупые вопросы' если потратил на изучение до часа и не разобрался в теме. Сразу палить из пушки вопросами не нужно, не изучив проблему самостоятельно.
6. Принимай активное участие в JS-сообществе (комментируй, общайся, знакомься, ходи на митапы и конференции)