👾
Node.js
  • 🧑‍💻Full-Stack Web Developer
  • 📚Теорія
    • 1️⃣Основи Node.js
      • Вступ
      • Модулі Node.js
      • Запуск скриптів модулів в Node.js
      • Структура проєкту, експорт-імпорт, index.js як хаб
      • Модулі CommonJS
      • Модулі MJS
      • Модулі ECMAScript
      • Модулі NPM + базові модулі
      • Глобальні змінні
      • Робота з файлами
    • 2️⃣Консольні додатки
      • Створення консольних додатків
    • 3️⃣Фреймворк Express
      • Про Express
      • Nodemon і запуски скриптів
      • Postman
      • Проміжне ПЗ middleware
      • Передача даних на сервер
      • Роутінг
      • CRUD
      • Налаштування лінтера
    • 4️⃣REST API
      • Змінні оточення
      • Логування
      • REST
      • Методи HTTP
      • CORS
      • Формування URL для REST API
      • Контроллери відсутнього роуту і непередбачуваної помилки
      • Валідація даних Joi
      • Рефакторинг додатку за MVC архітектурою
      • Express автогенератор додатку
    • 5️⃣База даних Mongo.DB
      • Основи MongoDB
      • Налаштування Mongo Atlas
      • Встановлення локальної MongoDB і основні команди
    • 6️⃣ODM Mongoose
      • Mongoose
      • Порядок планування бекенд додатку
      • чорнетка
    • 7️⃣Автентифякація WJT
      • чорнетка
      • чорнетка 2
    • 8️⃣Файли
      • чернетка
    • 9️⃣тестування
      • чернетка
    • 🔟Page 14
      • імейли
    • чорнетка докер
    • чорнетка сокети
    • додаткові матеріали
    • 👷Практика
      • 1️⃣Page 4
      • 2️⃣Page 5
      • 3️⃣Page 6
      • 4️⃣Page 7
      • 5️⃣Page 8
      • 6️⃣Page 9
  • Про мене
    • Про мене
Powered by GitBook
On this page
  1. Теорія
  2. Основи Node.js

Глобальні змінні

В Node.js існує обʼєкт Global. І щоб створити глобальну змінну потрібно її оголосити як властивість цього обʼєкту.

global.myValue = 5;

Якщо порівнювати з front-end розробкою для браузера, то це аналогія обʼєкта window.

Дізнатися із чого складається наш обʼєкт Global можна законсоливши його.

console.log(global);

В ньому містяться як змінні, так і методи. Наприклад, timeout.

setTimeout(() => {
  console.log("timer");
}, 3000);

Метод require, буде не глобальним, а локальним для кожного окремого модуля.

Локальними для кожного модуля також є:

module.export - об'єкт в якому ми зазначаємо що хочемо експортувати з модуля.

__filename - ім'я файлу скрипта, який виконується.

__dirname - шлях до директорії де міститься наш скрипт.

Створимо в якомусь файлі нашого проєкту такий скрипт і подивимося на результат

console.log(__dirname);
console.log(__filename);

До Global належать такі важливі класи:

Buffer - об'єкт, який використовують для операцій з бінарними даними.

Process - об'єкт процесу, в якому й зберігається більшість даних.

Розглянемо обʼєкт Process. він, наприклад містить дані про саму ноду, її версію, релізи, env тощо.

console.log(process);

Наприклад властивість process.env містить обʼєкт, який зберігає певні дані про систему. Ці дані можуть бути перевизначені і їх конфігурація різниться від операційної системи..

console.log(process.env.LOGNAME);

У цьому обʼєкті, наприклад можемо також створити якийсь параметр (змінну).

process.env.NodeEnv = "test env";

console.log(process.env.NodeEnv);

А от властивість process.argv містить масив аргументів командного рядка. Нульовим елементом буде ім'я виконуваної програми. node, другим ім'я самого виконуваного сценарію і тільки потім самі параметри.

console.log(process.argv);
terminal
node index.js 123 Hello

Це використовують в написанні консольних застосунків.

Для роботи з каталогами використовуються такі функції:

process.cwd() - повертає поточний робочий каталог (current working directory).

console.log(process.cwd());

process.chdir() - виконує перехід в інший каталог.

process.exit() - завершує процес із зазначеним як аргумент кодом: 0 – успішний код, будь-яке відмінне від 0 число, але найчастіше 1 – код помилки. (код після цього рядка не виконається).

process.nextTick(fn) - запланує виконання вказаної функції таким чином, що вона буде виконана після закінчення поточної фази (поточного виконуваного коду), але перед початком наступної фази event loop.

process.nextTick(function() {
  console.log('NextTick callback');
}

Об'єкт Process містить багато властивостей та методів, з якими можна ознайомитись самостійно у довідковій документації до Node.js.

PreviousМодулі NPM + базові модуліNextРобота з файлами

Last updated 1 year ago

📚
1️⃣