От автора: глобальные объекты Node.js доступны для всех модулей. Нам не нужно отдельно включать эти объекты в приложение, мы можем использовать их напрямую. В Node js объекты — модули, функции, строки и собственно объекты, ниже мы отдельно рассмотрим каждый из этих типов.
__filename
__filename представляет собой имя исполняемого кода. Это абсолютный путь к этому файлу кода. Для основной программы не обязательно использовать то же имя файла, которое используется в командной строке. Значение внутри модуля — это путь к этому файлу модуля.
Пример
Создайте файл js с именем main.js со следующим кодом:
1 2 |
// Давайте попытаемся вывести значение __filename console.log( __filename ); |
Теперь запустите main.js:
1 |
$ node main.js |
Исходя из расположения вашей программы, он выведет основное имя файла следующим образом: /web/com/1427091028_21099/main.js
__dirname
__dirname представляет имя директории, в которой располагается выполняемый в данный момент скрипт.
Пример
Создайте файл js с именем main.js со следующим кодом —
1 2 |
// Давайте попытаемся вывести значение __dirname console.log( __dirname ); |
Теперь запустите main.js:
1 |
$ node main.js |
Исходя из расположения вашей программы, он выведет текущее имя директории: /web/com/1427091028_21099
1 |
setTimeout(cb, ms) |
Глобальная функция SetTimeout(cb, ms) используется, чтобы запустить обратный вызов сd с задержкой как минимум в мс миллисекунд. Фактическая задержка зависит от различных факторов, таких как точность таймера ОС и загрузка системы. Задержка не может превышать 24,8 дня.
Эта функция возвращает неявное значение, которое представляет таймер, который можно использовать для удаления установленного таймера.
Пример
Создайте файл js с именем main.js со следующим кодом:
1 2 3 4 5 |
function printHello(){ console.log( "Hello, World!"); } // Now call above function after 2 seconds setTimeout(printHello, 2000); |
Теперь запустите main.js:
1 |
$ node main.js |
Вы должны увидеть, что результат выводится после небольшой задержки.
1 2 |
Hello, World! clearTimeout(t) |
Глобальная функция clearTimeout(t) используется для отмены таймера, который был ранее создан с помощью setTimeout(). Здесь t — таймер, возвращаемый функцией setTimeout().
Пример
Создайте файл js с именем main.js со следующим кодом —
1 2 3 4 5 6 7 8 9 |
function printHello(){ console.log( "Hello, World!"); } // Now call above function after 2 seconds var t = setTimeout(printHello, 2000); // Now clear the timer clearTimeout(t); |
Теперь запустите main.js.
1 |
$ node main.js |
В результате ничего не выводится.
1 |
setInterval(cb, ms) |
Глобальная функция setInterval(cb, ms) используется для повторного запуска обратного вызова cb через как минимум ms миллисекунд. Фактическая задержка зависит от различных факторов, таких как точность таймера ОС и загрузка системы. Таймер не может устанавливаться больше, чем на 24,8 дня.
Эта функция возвращает неявное значение, представляющее таймер, который можно использовать для очистки таймера, заданного с помощью функции clearInterval(t).
Пример
Создайте файл js с именем main.js со следующим кодом:
1 2 3 4 5 |
function printHello(){ console.log( "Hello, World!"); } // Now call above function after 2 seconds setInterval(printHello, 2000); |
Теперь запустите main.js:
1 |
$ node main.js |
Вышеупомянутая программа будет выполнять printHello() через каждые 2 секунды. Из-за ограничения системы эта программа не может быть выполнена с помощью опции «Try it», чтобы вы могли проверить ее на своем компьютере локально.
Глобальные объекты
В следующей таблице приведен список других объектов, которые часто используются в приложениях. Более подробную информацию вы можете найти в официальной документации.
Console — Используется для вывода информации в stdout и stderr.
Process — Используется для получения информации о текущем процессе. Предоставляет несколько событий, связанных с процессами.
Источник: //www.tutorialspoint.com/
Редакция: Команда webformyself.