) Есть по умолчанию синхронный(1 случай) API ввода-вывода и асинхронный(2 случай).Т.е. -это взаимодействие с внешними источниками-программами.
2). В 1 случае программа ждет результатов(к примеру,загрузки картинки )и только потом переходит к следующей итерации,во втором продолжает параллельно работать.(но почему работает setTimeout без web api? или это не коллбэк?)
3) 2 случай(асинхронный) требует web api.Он не ждет загрузки картинки,а сразу переходит к следущей инструкции.Но во втором случае,если последующему коду понадобится результат предыдущего,то будет эрор.
4) Во 2 случае мы можем применить промисы,коллбэк -в 1 случае это исключено.
5) Я подключаю webworkers исходя из необходимости?
Все ли верно я написал?
Нужно ли отделять асинхронный код от асинхронного API?
Как вообще работают коллбэки в стеке?Почему они работают без Webworkers(setTimeout)?
И почему, внутри тела функции, коллбэк ждет выполнения предыдущей инструкции?
Не могу сопоставить информацию с внешних ресурсов (хабр,мдн,комментарии на хабре и книжек).
Подскажите ,плиз. Если можно,на пальцах.
JS разумеется, асинхронный. И с WebWorker-ами многопоточный.
В JS нет разделяемой между тредами памяти, и в этом его отличие от C/C++ и прочих языков более низкого уровня.
Нихрена не понял)) я ниже в комменте все расписал,если не сложно гляньте,просто много вопросов.