Публикации по теме 'call-stack'


Возврат промиса — Как работает асинхронная функция
Итак, вы просматриваете веб-страницы. Вы нажимаете кнопку «Назад», и загружается последняя страница. Это основная концепция структуры данных, называемой стеком. Последнее, что добавляется в стек, выводится первым (LIFO). Вы знаете, как вы нажимаете кнопку отмены в Word, чтобы вернуться к предыдущему изменению? Это тоже работает по принципу ЛИФО. Таким же образом наш движок JavaScript обрабатывает вызовы функций в стеке вызовов . Поскольку существует только один стек и выполнение..

Снова понимание стека вызовов Javascript
Что такое стек вызовов? Итак, давайте посмотрим, что MDN говорит об этом: Стек вызовов  – это механизм, с помощью которого интерпретатор (например, интерпретатор JavaScript в веб-браузере) может отслеживать свое место в сценарии, вызывающем несколько "функций" – какая функция выполняется в данный момент и какая функции вызываются из этой функции и т. д. — MDN Web Docs На самом деле это означает, что когда дело доходит до Javascript, стек вызовов отслеживает наши функции и выполняет..

JavaScript: что такое контекст выполнения и стек вызовов
Понимание основ языка программирования дает нам более широкое восприятие, и это то, что отличает младшего разработчика от старшего разработчика. Контекст выполнения Контекст выполнения — это контекст, создаваемый при выполнении функции. Он состоит из activation object (параметры функции и локальные переменные), ссылки на внешнюю среду, также называемой scope chain , и значения this . Под капотом движка JavaScript каждый вызов execution context состоит из двух фаз. Фаза №..

Понимание асинхронности, цикла событий, очереди задач в JS
Мы знаем, что Javascript является однопоточным и синхронным. Подробнее об этом здесь . Single-Threaded = Обработка по одной строке за раз. Синхронно = Последовательность = один за другим. Давайте рассмотрим влияние Расёмона на синхронность . Если он обрабатывает один за другим, вторая строка ожидает первую строку, а третья строка — вторую в коде и так далее. Если какая-либо строка или блок занимает больше времени, следующие строки или блоки должны будут ждать, пока..

Как однопоточный javascript справляется с несколькими задачами одновременно?
Мы знаем javascript как однопоточный, асинхронный, параллельный и неблокирующий язык. Но первый вопрос, который возникает после прочтения этого, заключается в том, как язык может быть однопоточным, то есть способным выполнять одну задачу за раз и при этом быть асинхронным, параллельным и неблокирующим. Однопоточность подразумевает, что javascript имеет один стек вызовов, в котором хранятся вызываемые подпрограммы или функции. Однако, как и в любом стеке, в любой момент времени может..

Демонстрация рекурсии через игру со стеком вызовов!
эта функция ниже может показаться вам запутанной, если вы меня выдержите и прочитаете до конца! wrapperFnLoop называется функцией-оберткой, recurse — это замыкание, а в строке 7 есть рекурсия, функция recurse вызывает сама себя! но что возвращает эта функция? вот где игра со стеком вызовов пригодится. Есть 5 правил, которым вы должны следовать в игре со стеком вызовов: мы помещаем вызванную функцию Fn() в стек вызовов. мы выполняем тело функции. если мы сталкиваемся с другим..

10 вещей о стеке вызовов
Привет ребята ✋, Стек вызовов, контекст выполнения и очередь событий довольно запутанны 😕, это сбивает с толку, потому что это происходит за кулисами. мы не взаимодействуем с ними напрямую. поэтому сегодня мы обсудим 10 вещей о стеке вызовов. Движок Javascript, который используется внутри chrome/firefox или любого примера js узла, состоит из двух основных компонентов: Куча: где происходит выделение памяти Стек вызовов: где создаются кадры стека и выполняется фактический код...