Платформа
функция alert
alert(message?: string): voidОтображает указанное сообщение и ожидает нажатия клавиши Enter.
Если stdin не является интерактивным, функция ничего не делает.
Примеры
// Displays the message "Acknowledge me! [Enter]" and waits for the enter key to be pressed before continuing.
alert("Acknowledge me!");
Параметры
message: string Тип возвращаемого значения
void См. также
функция close
close(): voidЗавершает текущий процесс Deno.
Эта функция завершает процесс, отправляя среде выполнения сигнал о необходимости выхода. Аналогично exit(0) в POSIX. Её поведение похоже на поведение метода window.close() в браузере, но предназначено для среды выполнения Deno.
Примечание: используйте эту функцию с осторожностью, так как она немедленно остановит выполнение всей программы Deno.
Примеры
console.log("About to close the Deno process.");
close(); // The process will terminate here.
console.log("This will not be logged."); // This line will never execute.
Тип возвращаемого значения
void См. также
функция confirm
confirm(message?: string): booleanОтображает указанное сообщение и ожидает ответа. Возвращает ответ пользователя в виде логического значения.
Истинными считаются только y и Y.
Если stdin не является интерактивным, функция возвращает false.
Примеры
const shouldProceed = confirm("Do you want to proceed?");
// If the user presses 'y' or 'Y', the result will be true
// If the user presses 'n' or 'N', the result will be false
console.log("Should proceed?", shouldProceed);
Параметры
message: string Тип возвращаемого значения
boolean См. также
функция prompt
prompt(
message?: string,
defaultValue?: string,
): string | nullОтображает указанное сообщение и ожидает ввода пользователя. Возвращает введённые пользователем данные в виде строки.
Если указано значение по умолчанию и пользователь вводит пустую строку, возвращается указанное значение по умолчанию.
Если значение по умолчанию не указано и пользователь вводит пустую строку, возвращается пустая строка.
Если stdin не является интерактивным, функция возвращает null.
Примеры
const pet = prompt("Cats or dogs?", "It's fine to love both!");
// Displays the user's input or the default value of "It's fine to love both!"
console.log("Best pet:", pet);
Параметры
message: string defaultValue: string Тип возвращаемого значения
string | null См. также
функция queueMicrotask
queueMicrotask(func: VoidFunction): voidМикрозадача — это короткая функция, которая выполняется после выхода создавшей её функции или модуля и только при пустом стеке выполнения JavaScript, но до возврата управления циклу событий, используемому для управления средой выполнения скрипта. Этот цикл событий может быть основным циклом событий или циклом событий, управляющим веб-воркером.
queueMicrotask(() => { console.log('This event loop stack is complete'); });
Параметры
func: VoidFunction Тип возвращаемого значения
void функция reportError
reportError(error: any): voidОтправляет событие о неперехваченном исключении. Аналог синхронной версии:
setTimeout(() => { throw error; }, 0);
Ошибка не может быть перехвачена блоком try/catch. В глобальную область видимости будет отправлено событие ошибки. Можно предотвратить вывод ошибки в консоль с помощью Event.prototype.preventDefault():
addEventListener("error", (event) => {
event.preventDefault();
});
reportError(new Error("foo")); // Will not be reported.
В Deno эта ошибка приведёт к завершению процесса, если её не перехватить описанным выше способом.
Параметры
error: any Тип возвращаемого значения
void функция structuredClone
structuredClone<T = any>(
value: T,
options?: StructuredSerializeOptions,
): TСоздаёт глубокую копию заданного значения с помощью алгоритма структурного клонирования.
В отличие от поверхностной копии, глубокая копия не содержит тех же ссылок, что и исходный объект, поэтому её свойства можно изменять, не затрагивая источник. Подробнее см. в MDN.
Выбрасывает DataCloneError, если какая-либо часть входного значения не подлежит сериализации.
Примеры
const object = { x: 0, y: 1 };
const deepCopy = structuredClone(object);
deepCopy.x = 1;
console.log(deepCopy.x, object.x); // 1 0
const shallowCopy = object;
shallowCopy.x = 1;
// shallowCopy.x is pointing to the same location in memory as object.x
console.log(shallowCopy.x, object.x); // 1 1
Параметры типа
T = any Параметры
value: T options: StructuredSerializeOptions Тип возвращаемого значения
интерфейс AbortController
Объект-контроллер, позволяющий при необходимости прервать один или несколько запросов DOM.
Свойства
signal: AbortSignal Возвращает объект AbortSignal, связанный с этим объектом.
Методы
abort(reason?: any): void Вызов этого метода установит флаг прерывания AbortSignal данного объекта и сообщит всем наблюдателям, что соответствующее действие необходимо прервать.
переменная AbortController
Объект-контроллер, позволяющий при необходимости прервать один или несколько запросов DOM.
Свойства
prototype: AbortController интерфейс AbortSignal
Объект сигнала, позволяющий взаимодействовать с запросом DOM (например, Fetch) и при необходимости прервать его с помощью объекта AbortController.
Свойства
aborted: boolean Возвращает true, если AbortController этого AbortSignal отправил сигнал прерывания, и false в противном случае.
reason: any onabort: ((
this: AbortSignal,
ev: Event,
) => any) | null Методы
addEventListener<K extends keyof AbortSignalEventMap>(
type: K,
listener: (
this: AbortSignal,
ev: AbortSignalEventMap[K],
) => any,
options?: boolean | AddEventListenerOptions,
): void addEventListener(
type: string,
listener: EventListenerOrEventListenerObject,
options?: boolean | AddEventListenerOptions,
): void removeEventListener<K extends keyof AbortSignalEventMap>(
type: K,
listener: (
this: AbortSignal,
ev: AbortSignalEventMap[K],
) => any,
options?: boolean | EventListenerOptions,
): void removeEventListener(
type: string,
listener: EventListenerOrEventListenerObject,
options?: boolean | EventListenerOptions,
): void throwIfAborted(): void Выбрасывает причину прерывания этого AbortSignal, если AbortController отправил сигнал прерывания; в противном случае ничего не делает.
переменная AbortSignal
Объект-конструктор для AbortSignal.
Экземпляры AbortSignal получают из AbortController или с помощью статических фабричных методов abort, timeout и any, а не создают напрямую, поэтому вызов конструктора приводит к ошибке.
Свойства
prototype: AbortSignal Методы
abort(reason?: any): AbortSignal any(signals: AbortSignal[]): AbortSignal timeout(milliseconds: number): AbortSignal интерфейс AbortSignalEventMap
интерфейс CSSRule
Одно правило CSS из CSSStyleSheet, возвращаемое его свойством cssRules. Доступно только при включённом флаге --unstable-raw-imports.
Примечание: cssText — это точный текст одного правила верхнего уровня таблицы стилей; Deno не реализует полноценную объектную модель CSS.
Свойства
cssText: string интерфейс CSSStyleSheet
Таблица стилей, лежащая в основе скрипта CSS-модуля. Именно к этому результату приводит импорт import sheet from "./styles.css" with { type: "css" }. Доступно только при включённом флаге --unstable-raw-imports.
В Deno нет DOM, поэтому таблицу стилей нельзя подключить; её реализация основана на исходном тексте CSS.
Примечание: cssRules возвращает замороженный массив объектов CSSRule, а не живой CSSRuleList.
Свойства
Методы
replace(text: string): Promise<CSSStyleSheet> replaceSync(text: string): void интерфейс DOMException
Свойства
name: string message: string code: number INDEX_SIZE_ERR: 1 DOMSTRING_SIZE_ERR: 2 HIERARCHY_REQUEST_ERR: 3 WRONG_DOCUMENT_ERR: 4 INVALID_CHARACTER_ERR: 5 NO_DATA_ALLOWED_ERR: 6 NO_MODIFICATION_ALLOWED_ERR: 7 NOT_FOUND_ERR: 8 NOT_SUPPORTED_ERR: 9 INUSE_ATTRIBUTE_ERR: 10 INVALID_STATE_ERR: 11 SYNTAX_ERR: 12 INVALID_MODIFICATION_ERR: 13 NAMESPACE_ERR: 14 INVALID_ACCESS_ERR: 15 VALIDATION_ERR: 16 TYPE_MISMATCH_ERR: 17 SECURITY_ERR: 18 NETWORK_ERR: 19 ABORT_ERR: 20 URL_MISMATCH_ERR: 21 QUOTA_EXCEEDED_ERR: 22 TIMEOUT_ERR: 23 INVALID_NODE_TYPE_ERR: 24 DATA_CLONE_ERR: 25 переменная DOMException
Объект-конструктор для DOMException, используемый для создания исключения, описывающего аномальное событие, вызванное веб-API. Он также предоставляет устаревшие числовые константы кодов ошибок (например, ABORT_ERR).
Свойства
prototype: DOMException INDEX_SIZE_ERR: 1 DOMSTRING_SIZE_ERR: 2 HIERARCHY_REQUEST_ERR: 3 WRONG_DOCUMENT_ERR: 4 INVALID_CHARACTER_ERR: 5 NO_DATA_ALLOWED_ERR: 6 NO_MODIFICATION_ALLOWED_ERR: 7 NOT_FOUND_ERR: 8 NOT_SUPPORTED_ERR: 9 INUSE_ATTRIBUTE_ERR: 10 INVALID_STATE_ERR: 11 SYNTAX_ERR: 12 INVALID_MODIFICATION_ERR: 13 NAMESPACE_ERR: 14 INVALID_ACCESS_ERR: 15 VALIDATION_ERR: 16 TYPE_MISMATCH_ERR: 17 SECURITY_ERR: 18 NETWORK_ERR: 19 ABORT_ERR: 20 URL_MISMATCH_ERR: 21 QUOTA_EXCEEDED_ERR: 22 TIMEOUT_ERR: 23 INVALID_NODE_TYPE_ERR: 24 DATA_CLONE_ERR: 25 интерфейс DOMStringList
Сигнатуры индексирования
Свойства
length: number Возвращает количество строк в strings.
Методы
интерфейс ErrorConstructor
Свойства
stackTraceLimit: number Методы
captureStackTrace(
error: Object,
constructor?: Function,
): void интерфейс ImageData
Свойства
width: number height: number data: ImageDataArray pixelFormat: ImageDataPixelFormat colorSpace: PredefinedColorSpace переменная ImageData
интерфейс ImageDataSettings
Свойства
colorSpace: PredefinedColorSpace pixelFormat: ImageDataPixelFormat интерфейс ImportMeta
Deno добавляет свойства в import.meta. Они включены сюда, чтобы оставаться доступными при использовании пространства имён Deno совместно с другими библиотеками типов, такими как dom.
Свойства
url: string Строковое представление полного URL-адреса модуля. Если модуль загружен локально, значение будет URL-адресом файла (например, file:///path/module.ts).
Также можно разобрать строку как URL-адрес, чтобы узнать больше о способе загрузки текущего модуля. Например, чтобы определить, является ли модуль локальным:
const url = new URL(import.meta.url);
if (url.protocol === "file:") {
console.log("this module was loaded locally");
}
filename: string Абсолютный путь к текущему модулю.
Это свойство предоставляется только для локальных модулей (то есть использующих URL-адреса file://).
Пример:
// Unix
console.log(import.meta.filename); // /home/alice/my_module.ts
// Windows
console.log(import.meta.filename); // C:\alice\my_module.ts
dirname: string Абсолютный путь к каталогу, содержащему текущий модуль.
Это свойство предоставляется только для локальных модулей (то есть использующих URL-адреса file://).
- Пример:
// Unix
console.log(import.meta.dirname); // /home/alice
// Windows
console.log(import.meta.dirname); // C:\alice
main: boolean Флаг, указывающий, является ли текущий модуль главным модулем, вызванным при запуске программы в Deno.
if (import.meta.main) {
// this was loaded as the main module, maybe do some bootstrapping
}
Методы
resolve(specifier: string): string Функция, возвращающая разрешённый спецификатор так, как если бы он был импортирован с помощью import(specifier).
console.log(import.meta.resolve("./foo.js"));
// file:///dev/foo.js
интерфейс Location
Местоположение (URL) связанного с ним объекта. Изменения этого значения отражаются на объекте, к которому оно относится. Доступно через globalThis.location.
Свойства
ancestorOrigins: DOMStringList Возвращает объект DOMStringList со списком источников контекстов просмотра-предков: от родительского контекста просмотра до контекста просмотра верхнего уровня.
В Deno всегда пусто.
hash: string Возвращает фрагмент URL-адреса объекта Location (если фрагмент не пуст, включает начальный символ «#»).
В Deno не может быть задано.
host: string Возвращает хост и порт URL-адреса объекта Location (если порт отличается от порта по умолчанию для схемы).
В Deno не может быть задано.
hostname: string Возвращает хост URL-адреса объекта Location.
В Deno не может быть задано.
href: string Возвращает URL-адрес объекта Location.
В Deno не может быть задано.
origin: string Возвращает источник URL-адреса объекта Location.
pathname: string Возвращает путь URL-адреса объекта Location.
В Deno не может быть задано.
port: string Возвращает порт URL-адреса объекта Location.
В Deno не может быть задано.
protocol: string Возвращает схему URL-адреса объекта Location.
В Deno не может быть задано.
search: string Возвращает запрос URL-адреса объекта Location (если запрос не пуст, включает начальный символ «?»).
В Deno не может быть задано.
Методы
toString(): string assign(url: string): void Переходит по указанному URL-адресу.
В Deno не может быть задано.
reload(): void Перезагружает текущую страницу.
Отключено в Deno.
reload(forcedReload: boolean): void replace(url: string): void Удаляет текущую страницу из истории сеанса и переходит по указанному URL-адресу.
Отключено в Deno.
интерфейс Math
Методы
sumPrecise(values: Iterable<number>): number Возвращает сумму указанных значений, используя более точный алгоритм, чем наивное суммирование с помощью +, и избегая ошибок округления с плавающей запятой, накапливающихся при сложении большого количества чисел.
интерфейс Navigator
Предоставляет сведения о среде выполнения Deno и системе, на которой она запущена. Подобно объекту браузера Navigator, но адаптирован для контекста Deno.
переменная Navigator
Конструктор объектов Navigator.
Примечание: этот конструктор нельзя использовать для создания экземпляров Navigator в Deno. Глобальный объект navigator заранее определён в среде выполнения.
интерфейс NavigatorUABrandVersion
Пара «бренд и версия», описывающая пользовательский агент, возвращаемая объектом NavigatorUAData.
интерфейс NavigatorUAData
Предоставляет доступ к сведениям о пользовательском агенте среды выполнения через Navigator.userAgentData. Это API клиентских подсказок User-Agent.
переменная NavigatorUAData
Конструктор объектов NavigatorUAData.
Примечание: этот конструктор нельзя использовать для создания экземпляров NavigatorUAData в Deno.
интерфейс QuotaExceededError
переменная QuotaExceededError
Объект-конструктор для QuotaExceededError, используемый для создания ошибки, возникающей, если операция приведёт к превышению установленной квоты.
Свойства
prototype: QuotaExceededError интерфейс QuotaExceededErrorOptions
интерфейс RegExpConstructor
Методы
escape(string: string): string Возвращает новую строку, в которой символы, потенциально имеющие специальное значение в шаблоне регулярного выражения, заменены escape-последовательностями.
интерфейс StructuredSerializeOptions
Параметры, управляющие операциями структурированной сериализации, такими как structuredClone(value, options) и MessagePort.postMessage(message, options).
Необязательный массив transfer содержит список объектов Transferable, ресурсы которых следует переместить (передать) принимающей стороне, а не клонировать. После успешной передачи:
- У объекта
ArrayBufferисходный буфер становится нейтрализованным (егоbyteLengthполучает значение0). - Объект
MessagePortстановится непригодным для использования на стороне отправителя, и последующие события поступают только через переданный порт на стороне получателя.
Правила проверки:
- Каждый передаваемый объект может присутствовать в списке
transferтолько один раз. - Объект
MessagePortнельзя указывать вместе с соответствующим ему портом из того жеMessageChannelв одной операции передачи. - Повторяющиеся или иным образом недопустимые элементы приведут к возникновению
DataCloneErrorDOMException.
Передача повышает производительность при работе с большими двоичными данными и позволяет перемещать конечные точки связи без копирования.
Примеры
// Transferring an ArrayBuffer (zero-copy for large data)
const buffer = new ArrayBuffer(16);
const cloned = structuredClone(buffer, { transfer: [buffer] });
// After transfer, the original buffer is neutered
console.log(buffer.byteLength); // 0
console.log(cloned.byteLength); // 16
Свойства
transfer: Transferable[] Список передаваемых объектов, владение которыми перемещается, а не клонируется.
интерфейс UADataValues
Значения, возвращаемые NavigatorUAData.getHighEntropyValues.
Свойства
brands: NavigatorUABrandVersion[] mobile: boolean platform: string architecture: string bitness: string formFactors: string[] fullVersionList: NavigatorUABrandVersion[] model: string platformVersion: string uaFullVersion: string wow64: boolean интерфейс UALowEntropyJSON
Значения с низкой энтропией, возвращаемые NavigatorUAData.toJSON.
Свойства
brands: NavigatorUABrandVersion[] mobile: boolean platform: string интерфейс Uint8Array
Методы
toBase64(options?: { alphabet?: "base64" | "base64url"; omitPadding?: boolean; }): string Преобразует этот объект Uint8Array в строку base64.
setFromBase64(
string: string,
options?: { alphabet?: "base64" | "base64url"; lastChunkHandling?:
"loose"
| "strict"
| "stop-before-partial"
; },
): { read: number; written: number; } Заполняет этот объект Uint8Array данными из строки base64.
toHex(): string Преобразует этот объект Uint8Array в шестнадцатеричную строку.
setFromHex(string: string): { read: number; written: number; } Заполняет этот объект Uint8Array данными из шестнадцатеричной строки.
интерфейс Uint8ArrayConstructor
Методы
fromBase64(
string: string,
options?: { alphabet?: "base64" | "base64url"; lastChunkHandling?:
"loose"
| "strict"
| "stop-before-partial"
; },
): Uint8Array<ArrayBuffer> Создаёт новый объект Uint8Array из строки base64.
fromHex(string: string): Uint8Array<ArrayBuffer> Создаёт новый объект Uint8Array из шестнадцатеричной строки.
интерфейс VoidFunction
Сигнатуры вызова
(): void интерфейс WebTransport
Свойства
closed: Promise<WebTransportCloseInfo> datagrams: WebTransportDatagramDuplexStream incomingBidirectionalStreams: ReadableStream<WebTransportBidirectionalStream> incomingUnidirectionalStreams: ReadableStream<WebTransportReceiveStream> ready: Promise<void> Методы
close(closeInfo?: WebTransportCloseInfo): void createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WebTransportBidirectionalStream> createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WebTransportSendStream> переменная WebTransport
Объект-конструктор для WebTransport, используемый для открытия нового сеанса WebTransport с сервером по заданному адресу url.
Свойства
интерфейс WebTransportBidirectionalStream
Свойства
readable: WebTransportReceiveStream writable: WebTransportSendStream переменная WebTransportBidirectionalStream
Объект-конструктор для WebTransportBidirectionalStream.
Экземпляры получают из сеанса WebTransport, а не создают напрямую.
Свойства
интерфейс WebTransportCloseInfo
интерфейс WebTransportDatagramDuplexStream
Свойства
incomingHighWaterMark: number incomingMaxAge: number | null maxDatagramSize: number outgoingHighWaterMark: number outgoingMaxAge: number | null readable: WebTransportReceiveStream writable: WebTransportSendStream переменная WebTransportDatagramDuplexStream
Объект-конструктор для WebTransportDatagramDuplexStream.
Двунаправленный поток датаграмм получают из WebTransport.datagrams, а не создают напрямую.
Свойства
интерфейс WebTransportError
Свойства
source: WebTransportErrorSource streamErrorCode: number | null переменная WebTransportError
Объект-конструктор для WebTransportError, используемый для создания ошибки, описывающей сбой сеанса WebTransport или одного из его потоков.
Свойства
интерфейс WebTransportErrorOptions
Свойства
source: WebTransportErrorSource streamErrorCode: number | null интерфейс WebTransportHash
Свойства
algorithm: string value: BufferSource интерфейс WebTransportOptions
Свойства
allowPooling: boolean congestionControl: WebTransportCongestionControl requireUnreliable: boolean serverCertificateHashes: WebTransportHash[] интерфейс WebTransportReceiveStream
Методы
getStats(): Promise<WebTransportReceiveStreamStats> переменная WebTransportReceiveStream
Объект-конструктор для WebTransportReceiveStream.
Экземпляры получают из сеанса WebTransport, а не создают напрямую.
Свойства
интерфейс WebTransportReceiveStreamStats
Свойства
bytesReceived: number bytesRead: number интерфейс WebTransportSendGroup
Методы
getStats(): Promise<WebTransportSendStreamStats> переменная WebTransportSendGroup
Объект-конструктор для WebTransportSendGroup.
Экземпляры получают из сеанса WebTransport, а не создают напрямую.
Свойства
интерфейс WebTransportSendStream
Свойства
sendOrder: number sendGroup: WebTransportSendGroup Методы
переменная WebTransportSendStream
Объект-конструктор для WebTransportSendStream.
Экземпляры получают из сеанса WebTransport, а не создают напрямую.
Свойства
интерфейс WebTransportSendStreamOptions
Свойства
sendGroup: WebTransportSendGroup sendOrder: number waitUntilAvailable: boolean интерфейс WebTransportSendStreamStats
Свойства
интерфейс WebTransportWriter
Методы
atomicWrite(chunk: any): Promise<undefined> переменная WebTransportWriter
Объект-конструктор для WebTransportWriter.
Экземпляры получают из WebTransportSendStream, а не создают напрямую.
Свойства
интерфейс Window
Представляет глобальный объект окна в среде выполнения Deno.
Хотя в Deno нет окна браузера, этот интерфейс имитирует функциональность окна браузера для совместимости с веб-API. Он предоставляет доступ к глобальным свойствам и методам, таким как таймеры, хранилище и обработка событий.
Примеры
// Accessing global objects
const localStorage = window.localStorage;
// Event handling
window.addEventListener("unhandledrejection", (event) => {
console.log("Unhandled promise rejection:", event.reason);d
});
Свойства
onerror: ((
this: Window,
ev: ErrorEvent,
) => any) | null onbeforeunload: (() => any) | null onunhandledrejection: ((
this: Window,
) => any) | null onrejectionhandled: ((
this: Window,
) => any) | null close: () => void closed: boolean alert: (message?: string) => void confirm: (message?: string) => boolean prompt: (
message?: string,
defaultValue?: string,
) => string | null Deno: Deno name: string Методы
addEventListener<K extends keyof WindowEventMap>(
type: K,
listener: (
this: Window,
ev: WindowEventMap[K],
) => any,
options?: boolean | AddEventListenerOptions,
): void addEventListener(
type: string,
listener: EventListenerOrEventListenerObject,
options?: boolean | AddEventListenerOptions,
): void removeEventListener<K extends keyof WindowEventMap>(
type: K,
listener: (
this: Window,
ev: WindowEventMap[K],
) => any,
options?: boolean | EventListenerOptions,
): void removeEventListener(
type: string,
listener: EventListenerOrEventListenerObject,
options?: boolean | EventListenerOptions,
): void интерфейс WindowEventMap
Определяет соответствие между именами событий и соответствующими им типами событий для интерфейса Window в Deno.
Этот интерфейс обеспечивает проверку типов для обработчиков событий, сопоставляя имена событий с соответствующими типами событий.
Свойства
псевдоним типа AllowSharedBufferSource
псевдоним типа BufferSource
Определение
ArrayBufferView<ArrayBuffer> | ArrayBuffer псевдоним типа ImageDataArray
Определение
Uint8ClampedArray<ArrayBuffer> | Float16Array<ArrayBuffer> псевдоним типа ImageDataPixelFormat
Определение
"rgba-unorm8" | "rgba-float16" псевдоним типа PredefinedColorSpace
Определение
"srgb" | "display-p3" псевдоним типа WebTransportCongestionControl
Определение
"default"
| "low-latency"
| "throughput"
псевдоним типа WebTransportErrorSource
Определение
"session" | "stream" переменная closed
Указывает, закрыто ли текущее окно (контекст). В Deno это свойство предназначено главным образом для совместимости API с браузерами.
Тип
boolean переменная name
Получает или задаёт имя контекста просмотра глобальной области.
Предоставляется для совместимости с веб-платформой; в Deno нет контекста просмотра, поэтому по умолчанию это пустая строка.
Тип
string переменная navigator
Предоставляет доступ к интерфейсу Navigator среды выполнения Deno, который содержит сведения об окружении, в котором выполняется скрипт.
© 2018–2025 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/api/web/platform