Вопрос: Как научиться понимать работу js в браузере?

Лучший ответ:
Сначала вы учите алфавит, затем учитесь читать и писать по слогам, потом уже можете читать слова целиком. Точнее, как бы воспринимать слова целиком, а не по буквам или по слогам, то есть это переход на новый уровень смысловых единиц. Дальше вы можете быстро читать, целыми предложениями. Хотя если встречается сложносочиненное/сложноподчиненное предложение, то не всегда удаётся ухватить его с первого раза. Ну а спустя годы, освоив скорочтение, вы спокойно читаете по диагонали.
Профессиональный шахматист смотрит на доску и просто видит ходы. Причем из сотен вариантов он видит 2-3 нормальных и только над ними думает, остальные даже не замечает. И он не то чтобы просчитывал вперед, опять же он просто видит, как будет развиваться ситуация дальше. Использует ли он шахматные инструменты для анализа доски? Нет. Использует ли он какие-то учебники, которые помогают познать тайны шахматных правил? Нет. Правила просты до безобразия и можно выучить за 5 минут. А дальше только практика.
Мы используем инструменты разработчика, в основном, для отладки. То есть, чтобы проверить ту или иную переменную или посмотреть отладочные сообщения в консоли. Там есть всякие приятные возможности, но основное - это консоль. Она помогает пощупать интерпретатор, познакомиться вплотную. Чему равно 0/0? Или typeof []? Консоль даст ответ на множество подобных вопросов. JS довольно запутанный язык, который тянет за собой кучу исторических особенностей, которые нет смысла помнить все. Но время от времени играть с интерпретатором можно для общего развития.
А теперь главный вопрос. Для чего вам понимать работу js в чужих сайтах? Если у вас есть задача, так и делайте её. Какой смысл ковыряться в других сайтах?

Худший ответ:
Когда-то и я столкнулся с этим вопросом лицом к лицу. В тот момент я решил обратиться к основам работы браузера. На Хабре есть статьи на эту тему, причем их немало, которые мне помогли вникнуть в суть происходящего. Далее я начал изучать инструменты разработчика. Сам я использую Chromium с его Chrome Dev tools  от Google, разумеется, вам нужно использовать тот инструмент, который вам больше нравится, т.к. нет никакой разницы что использовать. Есть разница, как это использовать. Немного освоившись, я принялся дебажить свой же код. Иногда в ход шли реальные работы, а иногда, код написанный специально для этого. Самый эффективный пример, который мне понравился, это to do list, который я написал специально для этих целей. В интернет, to do list является самым популярным примером не просто так - это достаточно простой, но гибкий пример, на котором можно строить задачи как для новичков, так и для проффи. Знания, которые я получил этой практикой мне пригодились не сразу, но зато к месту. Спустя время, я начал осознавать, что мне стало проще ковыряться в чужом коде, и вот тогда я понял, что изучение основ и практика не прошли даром. Повторюсь, что когда-то я задал такой же вопрос, а ответ на него пришел сам собой спустя годы изучения и практики. Я считаю, что вам нужно, просто, больше практиковаться и тогда не вы будете задавать вопросы, а вам. Успехов вам. Надеюсь, что мой недоответ немного вам поможет.