Стандартная библиотека Deno (@std)
Стандартная библиотека Deno — это коллекция высококачественных проверенных модулей для решения распространённых задач, таких как работа с путями, датами, потоками и кодировками. Каждый модуль проверен командой Deno, не имеет сторонних зависимостей и работает в Deno, Node.js, Bun, Cloudflare Workers и браузере везде, где доступны соответствующие API платформы.
Библиотека публикуется в виде набора модульных пакетов на JSR в области @std. Вы устанавливаете только нужные вам пакеты, и каждый из них имеет независимое версионирование.
Начало работы
Добавьте пакет в проект с помощью deno add:
deno add jsr:@std/path jsr:@std/fmt
Это добавит зависимость в карту импортов deno.json, чтобы вы могли импортировать пакет по его имени без префикса:
import { join } from "@std/path";
console.log(join("dir", "file.txt"));
Вы также можете импортировать пакет напрямую из JSR, не добавляя его предварительно. Это удобно для разовых скриптов:
import { join } from "jsr:@std/path";
Стабильность
Большинство пакетов @std стабильны и следуют семантическому версионированию. Некоторые новые пакеты или пакеты низкого уровня помечены как нестабильные (их API может измениться без повышения основной версии) или внутренние (предназначены только для использования другими пакетами @std). На странице каждого пакета указана его стабильность, а вверху страниц нестабильных пакетов есть соответствующее предупреждение.
Пакеты
Перейдите по ссылке, чтобы ознакомиться с обзором, инструкциями по установке и полной справкой по символам на JSR.
- @std/assert – Общие функции утверждений, особенно полезные для тестирования
- @std/async – Утилиты для асинхронных операций, например задержки, устранения дребезга или организации пулов
- @std/bytes – Утилиты для работы с Uint8Arrays, отсутствующие в JavaScript
- @std/cache – НЕСТАБИЛЬНО: утилиты для кэширования
- @std/cbor – НЕСТАБИЛЬНО: утилиты для разбора и сериализации компактного двоичного представления объектов (CBOR)
- @std/cli – Инструменты для создания интерактивных утилит командной строки
- @std/collections – Функции без побочных эффектов для решения распространённых задач, связанных с типами коллекций, такими как массивы и объекты
- @std/crypto – Расширения для Web Crypto API
- @std/csv – Чтение и запись файлов со значениями, разделёнными запятыми (CSV)
- @std/data-structures – Распространённые структуры данных, такие как красно-чёрные деревья и двоичные кучи
- @std/datetime – НЕСТАБИЛЬНО: утилиты для работы с объектами Date
-
@std/dotenv – НЕСТАБИЛЬНО: разбор и загрузка переменных окружения из файла
.env - @std/encoding – Утилиты для кодирования и декодирования распространённых форматов, таких как hex, base64 и varint
-
@std/expect – Совместимые с Jest функции утверждений
expect - @std/fmt – Утилиты для форматирования значений: добавление цветов к тексту, форматирование длительности, утилиты printf и форматирование размеров в байтах.
- @std/front-matter – Извлечение метаданных front matter из строк
- @std/fs – Вспомогательные функции для работы с файловой системой
- @std/html – Функции для работы с HTML, например экранирование и снятие экранирования HTML-сущностей
- @std/http – Утилиты для создания HTTP-серверов
- @std/ini – НЕСТАБИЛЬНО: разбор и сериализация INI-файлов
- @std/internal – ВНУТРЕННИЙ: внутренний пакет для @std. Не используйте его напрямую.
- @std/io – НЕСТАБИЛЬНО: утилиты для расширенных операций ввода-вывода с использованием интерфейсов Reader и Writer.
- @std/json – Разбор (в том числе потоковый) и сериализация JSON-файлов
- @std/jsonc – Разбор и сериализация JSONC-файлов
- @std/log – НЕСТАБИЛЬНО: настраиваемая платформа для ведения журналов
- @std/math – Базовые математические утилиты
- @std/media-types – Вспомогательные функции для типов мультимедиа (MIME-типы)
- @std/msgpack – Кодирование и декодирование в формате msgpack
- @std/net – Утилиты для работы с сетью
- @std/path – Утилиты для работы с путями файловой системы
- @std/random – НЕСТАБИЛЬНО: различные утилиты для работы с генераторами случайных чисел. Пакет также предоставляет генератор псевдослучайных чисел с начальным значением.
- @std/regexp – Утилиты для работы с RegExp
- @std/semver – Разбор и сравнение семантических версий (SemVer)
- @std/streams – Утилиты для работы с Web Streams API
- @std/tar – НЕСТАБИЛЬНО: потоковые утилиты для работы с tar-архивами.
- @std/testing – Инструменты для тестирования кода Deno, например тестирование снимков, тестирование в стиле BDD и имитация времени
- @std/text – Утилиты для работы с текстом
- @std/toml – Разбор и сериализация TOML-файлов
- @std/ulid – Генерация универсальных уникальных лексикографически сортируемых идентификаторов (ULID)
- @std/uuid – Генераторы и валидаторы UUID
- @std/webgpu – НЕСТАБИЛЬНО: утилиты для работы с Web GPU API
- @std/xml – Разбор и сериализация XML для Deno.
- @std/yaml – Разбор и сериализация YAML-файлов
Этот указатель и разделы с обзором отдельных пакетов генерируются автоматически. Добавьте примеры, создав файлы в
_overrides/<package>.md.
© 2018–2025 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime/reference/std