Я начинаю серию статей о node js. На самом деле я не очень хорошо разбираюсь в node js. Поэтому я подумал, давайте снова начнем с нуля и поможем другим вместе со мной узнать об этом. Я видел учебники «сетевого ниндзя», взял программу оттуда и сделал свой собственный сплав. Я хочу помочь вам в моем путешествии, давайте вместе погрузимся в node js на 30 дней…
День 3 — Изучение Node JS за 30 дней [мини-серия]
Полная серия, чтобы легко изучить основы node js
Сегодняшняя тема — «JavaScript Engine».
Зачем нам нужен движок JavaScript?
Потому что компьютер недостаточно умен, чтобы понимать JavaScript без движка JavaScript
Итак, движок JavaScript работает как посредник, чтобы заставить компьютер понимать JavaScript
Так в чем же назначение движка JavaScript?
Превратите коды javascript в машинные/двоичные коды
Некоторые движки JavaScript
- V8 от Google для Chrome (наиболее часто используемый)
- SpiderMonkey от Mozila для Firefox
- JavascriptCore от Apple для Safari
- Чакра от Microsoft для Microsoft Edge
- Движок Hemes от Facebook для приложений Android
- Полный список см. на странице https://en.wikipedia.org/wiki/JavaScript_engine
Что такое V8?
V8 — это движок JavaScript с открытым исходным кодом, разработанный The Chromium Project для веб-браузеров Google Chrome и Chromium. Создатель проекта Ларс Бак. Первая версия движка V8 была выпущена одновременно с первой версией Chrome: 2 сентября 2008 г. (Википедия)
Как работает версия 8?
- Мы пишем коды
- Переход к версии 8
- наконец, v8 меняет его на C++
- C++ заменен на ассемблер
- окончательная сборка в машинные коды
Вы устали после всей этой информации?
Тогда один каверзный вопрос для вас: если каждая компания может сделать свою собственную версию движка, то они не должны делать это по-своему, верно? Почему одни и те же коды JavaScript работают во всех браузерах одинаково?
Устали искать ответ?
Потому что все следуют 'ECMAScript'. Это стандартизировано для написания движка JavaScript!
Первоначально он был опубликован в nerdjfpb blog, а графическая версия — в instagram. вы можете связаться со мной в twitter, linkedin или instagram