Перейти к содержанию

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

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

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

Класс: AbortController

Служебный класс, используемый для сигнализации отмены в выбранных Promiseна основе API. API основан на веб-API AbortController.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
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

  • Расширяется: {EventTarget}

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

Статический метод: AbortSignal.abort()

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

Событие: 'abort'

В 'abort' событие генерируется, когда abortController.abort() вызывается метод. Обратный вызов вызывается с одним аргументом объекта с одним type свойство установлено на 'abort':

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
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 } вариант (или, если используется EventEmitter API для присоединения слушателя, используйте once() метод), чтобы гарантировать, что прослушиватель событий будет удален, как только 'abort' событие обработано. Несоблюдение этого правила может привести к утечке памяти.

abortSignal.aborted

  • Тип: {логическое} Истина после AbortController был прерван.

abortSignal.onabort

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

Класс: Buffer

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

__dirname

Эта переменная может показаться глобальной, но это не так. Видеть __dirname.

__filename

Эта переменная может показаться глобальной, но это не так. Видеть __filename.

atob(data)

Стабильность: 3 – Закрыто

Наследие. Использовать Buffer.from(data, 'base64') вместо.

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

btoa(data)

Стабильность: 3 – Закрыто

Наследие. Использовать buf.toString('base64') вместо.

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

clearImmediate(immediateObject)

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

clearInterval(intervalObject)

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

clearTimeout(timeoutObject)

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

console

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

Event

Совместимая с браузером реализация Event класс. Видеть EventTarget а также Event API Больше подробностей.

EventTarget

Совместимая с браузером реализация EventTarget класс. Видеть EventTarget а также Event API Больше подробностей.

exports

Эта переменная может показаться глобальной, но это не так. Видеть exports.

global

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

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

MessageChannel

В MessageChannel класс. Видеть MessageChannel Больше подробностей.

MessageEvent

В MessageEvent класс. Видеть MessageEvent Больше подробностей.

MessagePort

В MessagePort класс. Видеть MessagePort Больше подробностей.

module

Эта переменная может показаться глобальной, но это не так. Видеть module.

performance

В perf_hooks.performance объект.

process

Объект процесса. Увидеть process объект раздел.

queueMicrotask(callback)

  • callback <Function> Функция для постановки в очередь.

В queueMicrotask() метод ставит в очередь микрозадачу для вызова callback. Если callback выдает исключение, process объект 'uncaughtException' событие будет выпущено.

Очередью микрозадач управляет V8, и ее можно использовать аналогично process.nextTick() очередь, которой управляет Node.js. В process.nextTick() очередь всегда обрабатывается перед очередью микрозадач на каждом этапе цикла обработки событий Node.js.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
// 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);
};

require()

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

setImmediate(callback[, ...args])

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

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

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

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

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

DOMException

WHATWG DOMException класс. Видеть DOMException Больше подробностей.

TextDecoder

WHATWG TextDecoder класс. Увидеть TextDecoder раздел.

TextEncoder

WHATWG TextEncoder класс. Увидеть TextEncoder раздел.

URL

WHATWG URL класс. Увидеть URL раздел.

URLSearchParams

WHATWG URLSearchParams класс. Увидеть URLSearchParams раздел.

WebAssembly

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

Комментарии