Spec-Zone.ru › Node.js 14 LTS

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

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

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

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

Класс: AbortController

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

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

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

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

abortController.signal

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

Класс: AbortSignal

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

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

Статический метод: AbortSignal.abort()
Добавлен в: v14.17.0
  • Возвращает: <AbortSignal>

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

Событие: 'abort'
Добавлен в: 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();

AbortController, с которым связан AbortSignal, будет только один раз испускать событие 'abort'. Рекомендуется, чтобы код проверял, что атрибут abortSignal.aborted имеет значение false перед добавлением обработчика события 'abort'.

Любые обработчики событий, присоединенные к AbortSignal должны использовать опцию { once: true } (или, если используются API EventEmitter для добавления обработчика, метод once()), чтобы гарантировать, что обработчик события удаляется, как только будет обработано событие 'abort'. В противном случае это может привести к утечкам памяти.

abortSignal.aborted
Добавлен в: v14.17.0
  • Тип: <boolean> Истинно после того, как AbortController был прерван.
abortSignal.onabort
Добавлен в: v14.17.0
  • Тип: <Функция>

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

Класс: Buffer

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

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

__dirname

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

__filename

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

clearImmediate(immediateObject)

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

clearImmediate описан в разделе таймеров.

clearInterval(intervalObject)

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

clearInterval описан в разделе таймеров.

clearTimeout(timeoutObject)

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

clearTimeout описан в разделе таймеров.

console

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

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

exports

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

global

Добавлен в: v0.1.27
  • <Объект> Объект глобального пространства имен.

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

module

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

process

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

Объект процесса. См. раздел process объект.

queueMicrotask(callback)

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

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

setImmediate описан в разделе таймеров.

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

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

setInterval описан в разделе таймеров.

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

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

setTimeout описан в разделе таймеров.

TextDecoder

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

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

TextEncoder

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

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

URL

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

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

URLSearchParams

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

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

WebAssembly

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

Объект, который служит пространством имен для всех функций, связанных с 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

Spec-Zone.ru

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