2016-12-30 2 views
4

Я новичок в ЗНАЧИТ стек, при изучении NodeJS, я придумал следующее заявление, что берет мой разумЧто значит сказать, что nodeJS построен на двигателе V8?

Node.js является очень мощным JavaScript на основе рамки/платформа, построенная на Google Двигатель JavaScript V8 от Chrome.

но что именно это означает на

построен на Google в Chrome JavaScript V8 Engine.

И если он построен на JS V8 Engine от Chrome, почему он работает и с Firefox?

+3

nodejs не запускается в браузере. nodejs - это язык на стороне сервера, который использует движок google v8 для запуска javascript. – user2263572

ответ

9

MEAN стек, реорганизован из задом наперед:

  • MongoDB: сохраняемость данных, хранит данные для последующего извлечения
  • Node.js: Сервер веб-приложений, отвечает на запросы клиентов
  • Экспресс: рамки веб-приложений, уменьшает узел шаблонного
  • Angular.js: рамочные браузер

Так Узел .js не работает в Firefox (он также не работает в Google Chrome): это серверная технология.Подумайте об этом как о замене Python/Ruby/Java в этой роли. Таким образом, он может/отвечает на запросы от всех видов клиентов (таких как Google Chrome и Firefox).

Что означает «построенный на V8», так это то, что он использует тот же интерпретатор JavaScript/компилятор «точно в срок», что и Google Chrome. Но сходство с хром в значительной степени останавливается на этом: у Node нет обработчика рендеринга/css parser/DOM, но есть вещи, которые вам нужны на сервере, например, в библиотеке HTTP и API файловой системы.

Кроме того, я имею в виду не обиду: все мы начали, где вы, тот факт, что вы даже задаете вопрос (что опять не так уж плохо!) Означает, что построение на стеке, как MEAN, над вашей головой , Документация будет предполагать, что вы знаете то, что, похоже, не знаете. I решительно рекомендую прокомментировать JavaScript и узел через некоторые обучающие программы и использовать тестовые приложения на баребонах, прежде чем пытаться бросить базы данных и фреймворки в микс.

0

V8 Engine - это интерпретатор для Javascript, который используется в Google Chrome.
Утверждение, что NodeJS построено поверх этого движка, означает, что он использует этот интерпретатор для своей собственной цели, поэтому его также можно использовать на сервере, а не только в среде рабочего стола (например, в Google Chrome).

NodeJS - это отдельное приложение, с которым вы можете общаться через Интернет, это как Apache, Nginx или аналогичный, но он не используется только для одной вещи (например, упомянутых выше), но в основном используется для создания веб-сервера как приложения.

1

Узел использует тот же JS-движок, который запускает хром. Механизм в этом случае представляет собой часть программного обеспечения, которое компилирует или «переводит» ваш JS-код в машинный код; или 0s и 1s, которые ваш компьютер может понять. Эта компиляция представляет собой сложный процесс, и есть несколько различных подходов к ее решению, например, spidermonkey v8 google или mozilla. Каждый из них поддерживает весь стандарт JS (в определенной степени), то есть любой код JavaScript может работать на них.

При запуске узла-сервера он запускается на компьютере, который работает как сервер. Код вообще не запускается на машине пользователя; поэтому не имеет значения, какой браузер используется для просмотра вашего контента.

В стеке MEAN это угловой код, который запускается на компьютере пользователя. Однако он написан на JavaScript, который можно запускать на любом движке javascript.

0

Node.js - это JavaScript на сервере. Например, вы можете запустить сервер Node.js на http://localhost:8000/, и вы можете получить доступ к нему с помощью Chrome или Firefox.

Используя Node.js (который использует V8), серверы могут быть написаны на JavaScript, а не на PHP или Ruby.

1

Хорошо, давайте пройдем через это:

Node.js является очень мощным JavaScript на основе рамки/платформа, построенная на Google в Chrome JavaScript V8 Engine.

JavaScript - это язык программирования, используемый в интернет-браузерах. Он был изобретен в 1995 году NetScape, я думаю, и был представлен организацией по сертификации называется ECMA в 1996

ECMA взял оригинальную идею JavaScript и сделал стандарт, называемый ECMAScript, который каждый Внедрение JavaScript должно следовать. Вы видите, что JavaScript не является языком, который существует где-то в эфире - каждый интернет-браузер поставляется с собственной реализацией языка - это означает, что JavaScript обычно работает только в интернет-браузерах, таких как Mozilla, Safari, Opera или Chrome, например. (Internet Explorer поставляется с реализацией ECMAScript, но они называют это JScript для лицензирования причин, почему я считаю)

Реализация JavaScript, который поставляется с Google Chrome работает на мощном V8 двигатель, который написан на языке, называемом C++. V8 интерпретирует ваш код JavaScript и предоставляет ему все типы переменных, управляет памятью и т. Д. Самое замечательное в V8 заключается в том, что он с открытым исходным кодом и может быть встроен в любую другую программу на C++.

Так создатели узла была идея взять V8 и повышения его путем добавления функций, что сервер должен обслуживать веб-сайты - чтение файлов, ответов на запросы, маршрутизации и т.д. Это означает, что теперь можно запрограммируйте серверную реализацию веб-сайта с помощью JavaScript благодаря приложению Node.js, которое интерпретирует ваш код и, по сути, переводит его на C++ и более поздний машинный код дальше по строке. Важным отличием является то, что Node.js НЕ запускается в вашем браузере! Он работает на сервере так же, как при кодировании back-end с использованием PHP и apache.

2

Для того чтобы язык программирования был выполнен компьютером, его необходимо перевести в формат, который может понять машина (обычно это называется machine code). Javascript ничем не отличается.Когда вашему браузеру представлен код Javascript на веб-сайте, что-то нужно скомпилировать или, в случае Javascript, интерпретировать инструкции в машинный код.

V8 - это программа, разработанная Google для выполнения именно этого. Когда вы используете Chrome и обнаруживаете Javascript на странице, он передает его на V8 для запуска компиляции, а затем ваш компьютер выполняет полученный код.

V8 был открыт компанией Google. Создатель Node, Ryan Dahl, изменил исходный код, чтобы V8 мог использоваться вне Chrome и внутри операционной системы, такой как Linux или MacOS. Это то, что подразумевается под вашей первой цитатой.

Важно отметить, что вы не выполняете свои узловые программы в браузере, а используете фактический компьютер. Нет никакой корреляции между V8 и Firefox, Safari, IE и т. Д. Все эти браузеры имеют свои собственные интерпретаторы Javascript.

0

На самом деле NodeJS представляет собой кросс-платформенный серверный интерфейс. Возможно, вы знаете, что он лучше всего подходит для приложений с привязкой к вводу-выводу и потоковой передачи данных, он использует JavaScript-движок JavaScript Google Chrome для вышеупомянутых целей. Таким образом, он не зависит от браузера и платформы.

Смежные вопросы