Глобальные объекты
Эти объекты доступны во всех модулях.
Следующие переменные могут казаться глобальными, но таковыми не являются. Они существуют только в области видимости модулей CommonJS:
Перечисленные здесь объекты специфичны для Node.js. Существуют встроенные объекты, которые являются частью самого языка JavaScript и также доступны глобально.
Класс: AbortController
Утилитарный класс, используемый для сигнализации о прерывании в выбранных Promise-базированных API. API основано на веб-API AbortController.
const ac = new AbortController();
ac.signal.addEventListener('abort', () => console.log('Aborted!'),
{ once: true });
ac.abort();
console.log(ac.signal.aborted); // Prints true copy
abortController.abort([reason])
-
reason<любое> Необязательное значение, которое можно получить в свойствеAbortSignalобъектаreason.
Вызывает сигнал прерывания, заставляя abortController.signal выпустить событие 'abort'.
abortController.signal
- Тип: <AbortSignal>
Класс: AbortSignal
- Расширяет: <EventTarget>
Объект AbortSignal используется для уведомления наблюдателей, когда вызывается метод abortController.abort().
Статический метод: AbortSignal.abort([reason])
-
reason: <любое> - Возвращает: <AbortSignal>
Возвращает новый уже прерванный объект AbortSignal.
Статический метод: AbortSignal.timeout(delay)
-
delay<число> Количество миллисекунд ожидания перед вызовом прерывания AbortSignal.
Возвращает новый объект AbortSignal, который будет прерван через delay миллисекунд.
Статический метод: AbortSignal.any(signals)
-
signals<AbortSignal[]> ОбъектыAbortSignal, из которых формируется новый объектAbortSignal.
Возвращает новый объект AbortSignal, который будет прерван, если любой из предоставленных сигналов будет прерван. Его свойство abortSignal.reason будет установлено в значение того сигнала, который вызвал прерывание.
Событие: '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(); copy Объект AbortController с которым ассоциирован объект AbortSignal может триггернуть событие 'abort' только один раз. Рекомендуется проверять значение атрибута abortSignal.aborted на false перед добавлением слушателя события 'abort'.
Любые слушатели событий, прикрепленные к объекту AbortSignal должны использовать опцию { once: true } (или, если использовать API для прикрепления слушателя, метод EventEmitter), чтобы гарантировать удаление слушателя сразу после обработки события 'abort'. Невыполнение этого может привести к утечкам памяти.
abortSignal.aborted
- Тип: <булево> Истинно после прерывания объекта
AbortController.
abortSignal.onabort
- Тип: <Функция>
Необязательная функция обратного вызова, которая может быть установлена пользователем для получения уведомления, когда вызвана функция abortController.abort().
abortSignal.reason
- Тип: <любое>
Необязательное значение, указанное при запуске прерывания AbortSignal.
const ac = new AbortController();
ac.abort(new Error('boom!'));
console.log(ac.signal.reason); // Error: boom! copy
abortSignal.throwIfAborted()
Если abortSignal.aborted имеет значение true, выбрасывает исключение abortSignal.reason.
Класс: Blob
См. <Blob>.
Класс: Buffer
Используется для обработки двоичных данных. См. раздел buffer.
Класс: ByteLengthQueuingStrategy
Реализация, совместимая с браузером, ByteLengthQueuingStrategy.
__dirname
Эта переменная может казаться глобальной, но не является таковой. См. __dirname.
__filename
Эта переменная может казаться глобальной, но не является таковой. См. __filename.
atob(data)
Buffer.from(data, 'base64') вместо этого.Глобальный псевдоним для buffer.atob().
BroadcastChannel
См. <BroadcastChannel>.
btoa(data)
buf.toString('base64') вместо этого.Глобальный псевдоним для buffer.btoa().
clearImmediate(immediateObject)
clearImmediate описана в разделе таймеры.
clearInterval(intervalObject)
clearInterval описана в разделе таймеры.
clearTimeout(timeoutObject)
clearTimeout описана в разделе таймеры.
Класс: CompressionStream
Реализация, совместимая с браузером, CompressionStream.
console
Используется для вывода в stdout и stderr. См. раздел console.
Класс: CountQueuingStrategy
Реализация, совместимая с браузером, класса CountQueuingStrategy.
Crypto
--no-experimental-global-webcrypto.Реализация, совместимая с браузером, объекта <Crypto>. Этот глобальный объект доступен только если двоичный файл Node.js был скомпилирован с включением поддержки модуля node:crypto.
crypto
--no-experimental-global-webcrypto.Реализация, совместимая с браузером, API криптографии веб-браузера (Web Crypto API).
CryptoKey
--no-experimental-global-webcrypto.Реализация, совместимая с браузером, объекта <CryptoKey>. Этот глобальный объект доступен только если двоичный файл Node.js был скомпилирован с включением поддержки модуля node:crypto.
CustomEvent
--no-experimental-global-customevent.Реализация, совместимая с браузером, CustomEvent API.
Класс: DecompressionStream
Реализация, совместимая с браузером, класса DecompressionStream.
Event
Реализация, совместимая с браузером, класса Event. Подробнее см. EventTarget и Event API.
EventTarget
Реализация, совместимая с браузером, класса EventTarget. Подробнее см. EventTarget и Event API.
exports
Эта переменная может казаться глобальной, но таковой не является. См. exports.
fetch
Реализация, совместимая с браузером, функции fetch().
Класс: File
См. <Файл>.
Класс FormData
Реализация, совместимая с браузером, объекта <FormData>.
global
globalThis вместо этого.- <Объект> Глобальный объект.
В браузерах верхний уровень области видимости традиционно является глобальной областью видимости. Это означает, что var something будет определять новую глобальную переменную, за исключением случаев использования ECMAScript-модулей. В Node.js это отличается. Верхний уровень области видимости не является глобальной областью видимости; var something внутри Node.js-модуля будет локальным для этого модуля, независимо от того, является ли он модулем CommonJS или модулем ECMAScript.
Класс Headers
Реализация, совместимая с браузером, объекта <Headers>.
MessageChannel
Класс MessageChannel. Подробнее см. MessageChannel.
MessageEvent
Класс MessageEvent. Подробнее см. MessageEvent.
MessagePort
Класс MessagePort. Подробнее см. MessagePort.
module
Эта переменная может казаться глобальной, но таковой не является. См. module.
Navigator
--no-experimental-global-navigator.Частичная реализация Navigator API.
navigator
--no-experimental-global-navigator.Частичная реализация window.navigator.
navigator.hardwareConcurrency
Свойство navigator.hardwareConcurrency только для чтения возвращает количество логических процессоров, доступных текущему экземпляру Node.js.
console.log(`This process is running on ${navigator.hardwareConcurrency} logical processors`); copy
navigator.language
Свойство navigator.language только для чтения возвращает строку, представляющую предпочтительный язык экземпляра Node.js. Язык определяется библиотекой ICU, используемой Node.js во время выполнения, на основе языка по умолчанию операционной системы.
Значение представляет собой версию языка, как определено в RFC 5646.
Значение по умолчанию для сборок без ICU — 'en-US'.
console.log(`The preferred language of the Node.js instance has the tag '${navigator.language}'`); copy
navigator.languages
- {Array
}
Свойство navigator.languages только для чтения возвращает массив строк, представляющих предпочтительные языки экземпляра Node.js. По умолчанию navigator.languages содержит только значение navigator.language, которое определяется библиотекой ICU, используемой Node.js во время выполнения, на основе языка по умолчанию операционной системы.
Значение по умолчанию для сборок без ICU — ['en-US'].
console.log(`The preferred languages are '${navigator.languages}'`); copy
navigator.platform
Свойство navigator.platform только для чтения возвращает строку, идентифицирующую платформу, на которой работает экземпляр Node.js.
console.log(`This process is running on ${navigator.platform}`); copy
navigator.userAgent
Свойство navigator.userAgent только для чтения возвращает строку user agent, состоящую из имени среды выполнения и номера основной версии.
console.log(`The user-agent is ${navigator.userAgent}`); // Prints "Node.js/21" copy
PerformanceEntry
Класс PerformanceEntry. См. PerformanceEntry для получения более подробной информации.
PerformanceMark
Класс PerformanceMark. См. PerformanceMark для получения более подробной информации.
PerformanceMeasure
Класс PerformanceMeasure. См. PerformanceMeasure для получения более подробной информации.
PerformanceObserver
Класс PerformanceObserver. См. PerformanceObserver для получения более подробной информации.
PerformanceObserverEntryList
Класс PerformanceObserverEntryList. См. PerformanceObserverEntryList для получения более подробной информации.
PerformanceResourceTiming
Класс PerformanceResourceTiming. См. PerformanceResourceTiming для получения более подробной информации.
performance
Объект perf_hooks.performance.
process
Объект process. См. раздел process объекта.
queueMicrotask(callback)
-
callback<Функция> Функция, которая должна быть поставлена в очередь.
Метод queueMicrotask() ставит в очередь микрозадачу для вызова callback. Если callback сгенерирует исключение, будет вызвано событие 'uncaughtException' объекта process объекта.
Управление очередью микрозадач осуществляется 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(key);
if (hit !== undefined) {
queueMicrotask(() => {
this.emit('load', hit);
});
return;
}
const data = await fetchData(key);
this._cache.set(key, data);
this.emit('load', data);
}; copy Класс: ReadableByteStreamController
Реализация, совместимая с браузером, ReadableByteStreamController.
Класс: ReadableStream
Реализация, совместимая с браузером, ReadableStream.
Класс: ReadableStreamBYOBReader
Реализация, совместимая с браузером, ReadableStreamBYOBReader.
Класс: ReadableStreamBYOBRequest
Реализация, совместимая с браузером, ReadableStreamBYOBRequest.
Класс: ReadableStreamDefaultController
Реализация, совместимая с браузером, ReadableStreamDefaultController.
Класс: ReadableStreamDefaultReader
Реализация, совместимая с браузером, ReadableStreamDefaultReader.
require()
Эта переменная может казаться глобальной, но таковой не является. См. require().
Response
Реализация, совместимая с браузером, <Response>.
Request
Реализация, совместимая с браузером, <Request>.
setImmediate(callback[, ...args])
setImmediate описана в разделе timers.
setInterval(callback, delay[, ...args])
setInterval описана в разделе timers.
setTimeout(callback, delay[, ...args])
setTimeout описывается в разделе таймеры.
structuredClone(value[, options])
Метод WHATWG structuredClone.
SubtleCrypto
--no-experimental-global-webcrypto.Реализация, совместимая с браузером, для <SubtleCrypto>. Этот глобальный объект доступен только если бинарник Node.js был скомпилирован с поддержкой модуля node:crypto.
DOMException
Класс WHATWG DOMException. Подробнее см. DOMException.
TextDecoder
Класс WHATWG TextDecoder. См. раздел TextDecoder.
Класс: TextDecoderStream
Реализация, совместимая с браузером, для TextDecoderStream.
TextEncoder
Класс WHATWG TextEncoder. См. раздел TextEncoder.
Класс: TextEncoderStream
Реализация, совместимая с браузером, для TextEncoderStream.
Класс: TransformStream
Реализация, совместимая с браузером, для TransformStream.
Класс: TransformStreamDefaultController
Реализация, совместимая с браузером, для TransformStreamDefaultController.
URL
Класс WHATWG URL. См. раздел URL.
URLSearchParams
Класс WHATWG URLSearchParams. См. раздел URLSearchParams.
WebAssembly
Объект, который служит пространством имён для всех связанных с W3C WebAssembly функций. См. Mozilla Developer Network для использования и совместимости.
WebSocket
Реализация, совместимая с браузером, для WebSocket. Отключить этот API с помощью флага командной строки --no-experimental-websocket.
Класс: WritableStream
Реализация, совместимая с браузером, для WritableStream.
Класс: WritableStreamDefaultController
Реализация, совместимая с браузером, для WritableStreamDefaultController.
Класс: WritableStreamDefaultWriter
Реализация, совместимая с браузером, для WritableStreamDefaultWriter.
© 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/api/globals.html