Глобальные объекты
Эти объекты доступны во всех модулях. Следующие переменные могут казаться глобальными, но таковыми не являются. Они существуют только в области видимости модулей, см. документацию по системе модулей:
Перечисленные здесь объекты специфичны для Node.js. Существуют встроенные объекты, которые являются частью самого языка JavaScript и также доступны глобально.
Класс: AbortController
Утилитарный класс, используемый для сигнализации об отмене в выбранных Promise-основанных API. API основано на Web API AbortController.
Для использования запустите Node.js с флагом --experimental-abortcontroller.
const ac = new AbortController();
ac.signal.addEventListener('abort', () => console.log('Aborted!'),
{ once: true });
ac.abort();
console.log(ac.signal.aborted); // Prints True abortController.abort()
Вызывает сигнал об отмене, заставляя abortController.signal испустить событие 'abort'.
abortController.signal
- Тип: <AbortSignal>
Класс: AbortSignal
- Расширяет: <EventTarget>
AbortSignal используется для уведомления наблюдателей, когда вызывается метод abortController.abort().
Статический метод: AbortSignal.abort()
- Возвращает: <AbortSignal>
Возвращает новый уже прерванный AbortSignal.
Событие: 'abort'
Событие 'abort' испускается, когда вызывается метод abortController.abort(). Обработчик вызывается с единственным аргументом — объектом, содержащим единственное свойство type со значением 'abort':
const ac = new AbortController();
// Use either the onabort property...
ac.signal.onabort = () => console.log('aborted!');
// Or the EventTarget API...
ac.signal.addEventListener('abort', (event) => {
console.log(event.type); // Prints 'abort'
}, { once: true });
ac.abort(); AbortController, с которым связан AbortSignal, будет только один раз испускать событие 'abort'. Рекомендуется, чтобы код проверял, что атрибут abortSignal.aborted имеет значение false перед добавлением обработчика события 'abort'.
Любые обработчики событий, присоединенные к AbortSignal должны использовать опцию { once: true } (или, если используются API EventEmitter для добавления обработчика, метод once()), чтобы гарантировать, что обработчик события удаляется, как только будет обработано событие 'abort'. В противном случае это может привести к утечкам памяти.
abortSignal.aborted
- Тип: <boolean> Истинно после того, как
AbortControllerбыл прерван.
abortSignal.onabort
- Тип: <Функция>
Необязательная функция обратного вызова, которую пользовательский код может установить, чтобы быть уведомленным, когда была вызвана функция abortController.abort().
Класс: Buffer
Используется для обработки двоичных данных. См. раздел буфера.
__dirname
Эта переменная может казаться глобальной, но не является таковой. См. __dirname.
__filename
Эта переменная может казаться глобальной, но не является таковой. См. __filename.
clearImmediate(immediateObject)
clearImmediate описан в разделе таймеров.
clearInterval(intervalObject)
clearInterval описан в разделе таймеров.
clearTimeout(timeoutObject)
clearTimeout описан в разделе таймеров.
console
Используется для вывода в stdout и stderr. См. раздел console.
exports
Эта переменная может казаться глобальной, но не является таковой. См. exports.
global
- <Объект> Объект глобального пространства имен.
В браузерах область видимости верхнего уровня — это глобальная область видимости. Это означает, что в браузере var something определит новую глобальную переменную. В Node.js это отличается. Область видимости верхнего уровня не является глобальной областью видимости; var something внутри модуля Node.js будет локальной для этого модуля.
module
Эта переменная может казаться глобальной, но не является таковой. См. module.
process
Объект процесса. См. раздел process объект.
queueMicrotask(callback)
-
callback<Функция> Функция, подлежащая очереди.
Метод queueMicrotask() добавляет в очередь микрозадачу для вызова callback. Если callback выбросит исключение, событие process объекта 'uncaughtException' будет испущено.
Управление очередью микрозадач осуществляется V8 и может быть использовано аналогично очереди process.nextTick(), управляемой Node.js. Очередь process.nextTick() всегда обрабатывается перед очередью микрозадач в каждом цикле обработки событий Node.js.
// Here, `queueMicrotask()` is used to ensure the 'load' event is always
// emitted asynchronously, and therefore consistently. Using
// `process.nextTick()` here would result in the 'load' event always emitting
// before any other promise jobs.
DataHandler.prototype.load = async function load(key) {
const hit = this._cache.get(url);
if (hit !== undefined) {
queueMicrotask(() => {
this.emit('load', hit);
});
return;
}
const data = await fetchData(key);
this._cache.set(url, data);
this.emit('load', data);
}; require()
Эта переменная может казаться глобальной, но не является таковой. См. require().
setImmediate(callback[, ...args])
setImmediate описан в разделе таймеров.
setInterval(callback, delay[, ...args])
setInterval описан в разделе таймеров.
setTimeout(callback, delay[, ...args])
setTimeout описан в разделе таймеров.
TextDecoder
Класс WHATWG TextDecoder. См. раздел TextDecoder.
TextEncoder
Класс WHATWG TextEncoder. См. раздел TextEncoder.
URL
Класс WHATWG URL. См. раздел URL.
URLSearchParams
Класс WHATWG URLSearchParams. См. раздел URLSearchParams.
WebAssembly
Объект, который служит пространством имен для всех функций, связанных с WebAssembly W3C. См. Mozilla Developer Network для использования и совместимости.
© Joyent, Inc. and other Node contributors
Licensed under the MIT License.
Node.js is a trademark of Joyent, Inc. and is used with its permission.
We are not endorsed by or affiliated with Joyent.
https://nodejs.org/dist/latest-v14.x/docs/api/globals.html