Spec-Zone.ru › Node.js 18 LTS

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

Эти объекты доступны во всех модулях. Следующие переменные могут казаться глобальными, но таковыми не являются. Они существуют только в рамках модулей, см. документацию по системе модулей:

  • __dirname
  • __filename
  • exports
  • module
  • require()

Перечисленные здесь объекты специфичны для Node.js. Существуют встроенные объекты, которые являются частью самого языка JavaScript и также доступны глобально.

Класс: AbortController

История
Версия Изменения
v15.4.0

Больше не экспериментальная.

v15.0.0, v14.17.0

Добавлена в: v15.0.0, v14.17.0

Утилитарный класс, используемый для сигнализации об отмене в выбранных 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])

История
Версия Изменения
v17.2.0, v16.14.0

Добавлен новый необязательный аргумент причины.

v15.0.0, v14.17.0

Добавлена в: v15.0.0, v14.17.0

  • reason <любое> Необязательная причина, извлекаемая из свойства AbortSignal объекта reason.

Вызывает сигнал отмены, заставляя abortController.signal выпустить событие 'abort'.

abortController.signal

Добавлена в: v15.0.0, v14.17.0
  • Тип: <AbortSignal>

Класс: AbortSignal

Добавлена в: v15.0.0, v14.17.0
  • Расширяет: <EventTarget>

AbortSignal используется для уведомления наблюдателей, когда вызывается метод abortController.abort().

Статический метод: AbortSignal.abort([reason])
История
Версия Изменения
v17.2.0, v16.14.0

Добавлен новый необязательный аргумент причины.

v15.12.0, v14.17.0

Добавлена в: v15.12.0, v14.17.0

  • reason: <любое>
  • Возвращает: <AbortSignal>

Возвращает новый уже отменённый AbortSignal.

Статический метод: AbortSignal.timeout(delay)
Добавлена в: v17.3.0, v16.14.0
  • delay <число> Количество миллисекунд ожидания перед вызовом AbortSignal.

Возвращает новый AbortSignal, который будет отменён через delay миллисекунд.

Статический метод: AbortSignal.any(signals)
Добавлена в: v18.17.0
  • signals <AbortSignal[]> AbortSignal, из которых составляется новый AbortSignal.

Возвращает новый AbortSignal, который будет отменён, если любой из предоставленных сигналов будет отменён. Его свойство abortSignal.reason будет установлено в значение той signals, которая привела к отмене.

Событие: 'abort'
Добавлена в: v15.0.0, v14.17.0

Событие '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
Добавлена в: v15.0.0, v14.17.0
  • Тип: <логическое значение> Истинно, после того, как AbortController был отменён.
abortSignal.onabort
Добавлена в: v15.0.0, v14.17.0
  • Тип: <Функция>

Необязательная функция обратного вызова, которая может быть установлена пользовательским кодом для уведомления при вызове функции abortController.abort().

abortSignal.reason
Добавлена в: v17.2.0, v16.14.0
  • Тип: <любое>

Необязательная причина, указанная при вызове AbortSignal.

const ac = new AbortController();
ac.abort(new Error('boom!'));
console.log(ac.signal.reason);  // Error: boom! copy
abortSignal.throwIfAborted()
Добавлена в: v17.3.0

Если abortSignal.aborted равно true, выбрасывает abortSignal.reason.

Класс: Blob

Добавлена в: v18.0.0

См. <Blob>.

Класс: Buffer

Добавлена в: v0.1.103
  • <Функция>

Используется для обработки двоичных данных. См. раздел buffer.

Класс: ByteLengthQueuingStrategy

Добавлена в: v18.0.0
Уровень стабильности: 1 - Экспериментально.

Реализация, совместимая с браузером, для ByteLengthQueuingStrategy.

__dirname

Эта переменная может казаться глобальной, но таковой не является. См. __dirname.

__filename

Эта переменная может казаться глобальной, но таковой не является. См. __filename.

atob(data)

Добавлена в: v16.0.0
Уровень стабильности: 3 - Устаревшая. Используйте Buffer.from(data, 'base64') вместо.

Глобальный псевдоним для buffer.atob().

BroadcastChannel

Добавлена в: v18.0.0

См. <BroadcastChannel>.

btoa(data)

Добавлена в: v16.0.0
Уровень стабильности: 3 - Устаревшая. Используйте buf.toString('base64') вместо.

Глобальный псевдоним для buffer.btoa().

clearImmediate(immediateObject)

Добавлена в: v0.9.1

clearImmediate описан в разделе timers.

clearInterval(intervalObject)

Добавлена в: v0.0.1

clearInterval описан в разделе timers.

clearTimeout(timeoutObject)

Добавлена в: v0.0.1

clearTimeout описан в разделе timers.

Класс: CompressionStream

Добавлена в: v18.0.0
Уровень стабильности: 1 - Экспериментально.

Реализация, совместимая с браузером, для CompressionStream.

console

Добавлена в: v0.1.100
  • <Объект>

Используется для вывода в stdout и stderr. См. раздел console.

END_OF_DOCUMENT_MARKER

Класс: CountQueuingStrategy

Добавлен в: v18.0.0
Уровень стабильности: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса CountQueuingStrategy.

Crypto

Добавлен в: v17.6.0
Уровень стабильности: 1 - Экспериментальный. Включите этот API с помощью флага командной строки --experimental-global-webcrypto.

Реализация, совместимая с браузером, объекта <Crypto>. Этот глобальный объект доступен только если бинарник Node.js был скомпилирован с поддержкой модуля node:crypto.

crypto

Добавлен в: v17.6.0
Уровень стабильности: 1 - Экспериментальный. Включите этот API с помощью флага командной строки --experimental-global-webcrypto.

Реализация, совместимая с браузером, API криптографии веб-браузера (Web Crypto API).

CryptoKey

Добавлен в: v17.6.0
Уровень стабильности: 1 - Экспериментальный. Включите этот API с помощью флага командной строки --experimental-global-webcrypto.

Реализация, совместимая с браузером, класса <CryptoKey>. Этот глобальный объект доступен только если бинарник Node.js был скомпилирован с поддержкой модуля node:crypto.

CustomEvent

Добавлен в: v18.7.0
Уровень стабильности: 1 - Экспериментальный. Включите этот API с помощью флага командной строки --experimental-global-customevent.

Реализация, совместимая с браузером, CustomEvent API.

Класс: DecompressionStream

Добавлен в: v18.0.0
Уровень стабильности: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса DecompressionStream.

Event

История
Версия Изменения
v15.4.0

Больше не экспериментальная.

v15.0.0

Добавлен в: v15.0.0

Реализация, совместимая с браузером, класса Event. Подробнее см. EventTarget и Event API.

EventTarget

История
Версия Изменения
v15.4.0

Больше не экспериментальная.

v15.0.0

Добавлен в: v15.0.0

Реализация, совместимая с браузером, класса EventTarget. Подробнее см. EventTarget и Event API.

exports

Эта переменная может казаться глобальной, но таковой не является. См. exports.

fetch

История
Версия Изменения
v18.0.0

Больше не скрывается за флагом --experimental-global-fetch командной строки.

v17.5.0

Добавлен в: v17.5.0

Уровень стабильности: 1 - Экспериментальный. Отключите этот API с помощью флага командной строки --no-experimental-fetch.

Реализация, совместимая с браузером, функции fetch().

Класс FormData

История
Версия Изменения
v18.0.0

Больше не скрывается за флагом --experimental-global-fetch командной строки.

v17.6.0

Добавлен в: v17.6.0

Уровень стабильности: 1 - Экспериментальный. Отключите этот API с помощью флага командной строки --no-experimental-fetch.

Реализация, совместимая с браузером, класса <FormData>.

global

Добавлен в: v0.1.27
Уровень стабильности: 3 - Устаревший. Используйте globalThis вместо этого.
  • <Объект> Глобальный объект.

В браузерах верхний уровень области видимости традиционно является глобальной областью видимости. Это означает, что var something будет определять новую глобальную переменную, за исключением ECMAScript-модулей. В Node.js это отличается. Верхний уровень области видимости не является глобальной областью видимости; var something внутри модуля Node.js будет локальным для этого модуля, независимо от того, является ли он модулем CommonJS или ECMAScript-модулем.

Класс Headers

История
Версия Изменения
v18.0.0

Больше не скрывается за флагом --experimental-global-fetch командной строки.

v17.5.0

Добавлен в: v17.5.0

Уровень стабильности: 1 - Экспериментальный. Отключите этот API с помощью флага командной строки --no-experimental-fetch.

Реализация, совместимая с браузером, класса <Headers>.

MessageChannel

Добавлен в: v15.0.0

Класс MessageChannel. Подробнее см. MessageChannel.

MessageEvent

Добавлен в: v15.0.0

Класс MessageEvent. Подробнее см. MessageEvent.

MessagePort

Добавлен в: v15.0.0

Класс MessagePort. Подробнее см. MessagePort.

module

Эта переменная может казаться глобальной, но таковой не является. См. module.

performance

Добавлен в: v16.0.0

Объект perf_hooks.performance.

process

Добавлен в: v0.1.7
  • <Объект>

Объект process. См. раздел process.

queueMicrotask(callback)

Добавлен в: v11.0.0
  • 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

Добавлен в: v18.0.0
Уровень стабильности: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса ReadableByteStreamController.

Класс: ReadableStream

Добавлен в: v18.0.0
Уровень стабильности: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса ReadableStream.

Класс: ReadableStreamBYOBReader

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса ReadableStreamBYOBReader.

Класс: ReadableStreamBYOBRequest

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса ReadableStreamBYOBRequest.

Класс: ReadableStreamDefaultController

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса ReadableStreamDefaultController.

Класс: ReadableStreamDefaultReader

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса ReadableStreamDefaultReader.

require()

Эта переменная может казаться глобальной, но таковой не является. См. require().

Response

История
Версия Изменения
v18.0.0

Больше не скрывается за флагом командной строки --experimental-global-fetch.

v17.5.0

Добавлен в: v17.5.0

Устойчивость: 1 - Экспериментальный. Отключить этот API с помощью флага командной строки --no-experimental-fetch.

Реализация, совместимая с браузером, объекта <Response>.

Request

История
Версия Изменения
v18.0.0

Больше не скрывается за флагом командной строки --experimental-global-fetch.

v17.5.0

Добавлен в: v17.5.0

Устойчивость: 1 - Экспериментальный. Отключить этот API с помощью флага командной строки --no-experimental-fetch.

Реализация, совместимая с браузером, объекта <Request>.

setImmediate(callback[, ...args])

Добавлен в: v0.9.1

setImmediate описан в разделе timers.

setInterval(callback, delay[, ...args])

Добавлен в: v0.0.1

setInterval описан в разделе timers.

setTimeout(callback, delay[, ...args])

Добавлен в: v0.0.1

setTimeout описан в разделе timers.

structuredClone(value[, options])

Добавлен в: v17.0.0

Метод WHATWG structuredClone.

SubtleCrypto

Добавлен в: v17.6.0
Устойчивость: 1 - Экспериментальный. Включить этот API с помощью флага командной строки --experimental-global-webcrypto.

Реализация, совместимая с браузером, класса <SubtleCrypto>. Этот глобальный объект доступен только в том случае, если бинарный файл Node.js был скомпилирован с включением поддержки модуля node:crypto.

DOMException

Добавлен в: v17.0.0

Класс WHATWG DOMException. Подробности см. в DOMException.

TextDecoder

Добавлен в: v11.0.0

Класс WHATWG TextDecoder. См. раздел TextDecoder.

Класс: TextDecoderStream

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса TextDecoderStream.

TextEncoder

Добавлен в: v11.0.0

Класс WHATWG TextEncoder. См. раздел TextEncoder.

Класс: TextEncoderStream

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса TextEncoderStream.

Класс: TransformStream

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса TransformStream.

Класс: TransformStreamDefaultController

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса TransformStreamDefaultController.

URL

Добавлен в: v10.0.0

Класс WHATWG URL. См. раздел URL.

URLSearchParams

Добавлен в: v10.0.0

Класс WHATWG URLSearchParams. См. раздел URLSearchParams.

WebAssembly

Добавлен в: v8.0.0
  • <Объект>

Объект, служащий пространством имён для всех функций W3C, связанных с WebAssembly. Обратитесь к Mozilla Developer Network для получения информации об использовании и совместимости.

Класс: WritableStream

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса WritableStream.

Класс: WritableStreamDefaultController

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса WritableStreamDefaultController.

Класс: WritableStreamDefaultWriter

Добавлен в: v18.0.0
Устойчивость: 1 - Экспериментальный.

Реализация, совместимая с браузером, класса 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/dist/latest-v18.x/docs/api/globals.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API