Node.js Урок 2: Движок V8 и глобальные объекты

Движок V8

JavaScript-код не исполняется компьютером напрямую, требуя преобразования в машинный код. Это делает движок V8, написанный на C++. Он встроен в Node.js. Таким образом, Node.js (написанный на C++) взаимодействует с V8 для выполнения JavaScript-кода. Процесс: мы пишем JavaScript-код, V8 преобразует его в машинный код, и компьютер его исполняет. Это упрощенное объяснение.

Глобальные объекты

В Node.js применим весь синтаксис JavaScript. Незнание JavaScript требует изучения основ языка.

В JavaScript есть глобальный объект window (в браузере), предоставляющий доступ к свойствам окна (ширина, высота и т.д.). В Node.js его нет. Вместо него — глобальный объект global, предоставляющий похожие возможности, но в контексте Node.js.

Помимо global, доступны другие глобальные объекты. Например, console для вывода в консоль (использовался в предыдущих уроках).

Node.js предоставляет специфические глобальные переменные, например, __dirname для получения пути к директории текущего файла:

console.log(__dirname);

Для вывода пути к файлу с именем:

console.log(__filename);

Использование JavaScript-синтаксиса

Node.js полностью поддерживает синтаксис JavaScript: переменные, условные операторы, циклы и другие конструкции:

let x = 0;
if (x === 0) {
  console.log("zero");
}

for (let i = 0; i < 5; i++) {
  console.log(i);
}

setTimeout(() => {
  console.log("Привет");
}, 2000);

Доступны функции setInterval, setTimeout и другие.

Рассмотрены основы движка V8 и глобальные объекты в Node.js. Node.js использует тот же JavaScript, что и браузеры, поэтому знание JavaScript упростит изучение Node.js. В следующих уроках — более углубленное изучение Node.js.

Что будем искать? Например,программа