@std/toml
Обзор
parse и stringify для работы с данными в формате TOML.
Обязательно ознакомьтесь с поддерживаемыми типами: на данный момент поддерживаются не все элементы спецификации, а обработка на стороне TypeScript немного отличается.
Поддерживаемые типы и обработка
- Ключи
- Строка
- Многострочная строка
- Буквальная строка
- Целое число
- Число с плавающей точкой
- Логическое значение
- Дата и время со смещением
- Локальные дата и время
- Локальная дата
- Локальное время
- Таблица
- Встроенная таблица
- Массив таблиц
Поддерживается с предупреждениями; см. Предупреждение.
Предупреждение
Строка
Из-за особенностей спецификации невозможно определить регулярное выражение в объявлении TOML с помощью флага. Поэтому регулярное выражение сохраняется как строка.
Целое число
Двоичные, восьмеричные и шестнадцатеричные числа сохраняются как строки, чтобы их не интерпретировали как десятичные.
Локальное время
Поскольку в JavaScript не существует типа локального времени, локальное время сохраняется как строка.
Массив таблиц
На данный момент поддерживаются только простые объявления, например:
[[bin]]
name = "deno"
path = "cli/main.rs"
[[bin]]
name = "deno_core"
path = "src/foo.rs"
[[nib]]
name = "node"
path = "not_found"
будет выведено:
{
"bin": [
{ "name": "deno", "path": "cli/main.rs" },
{ "name": "deno_core", "path": "src/foo.rs" }
],
"nib": [{ "name": "node", "path": "not_found" }]
}
import { parse, stringify } from "@std/toml";
import { assertEquals } from "@std/assert";
const obj = {
bin: [
{ name: "deno", path: "cli/main.rs" },
{ name: "deno_core", path: "src/foo.rs" },
],
nib: [{ name: "node", path: "not_found" }],
};
const tomlString = stringify(obj);
assertEquals(tomlString, `
[[bin]]
name = "deno"
path = "cli/main.rs"
[[bin]]
name = "deno_core"
path = "src/foo.rs"
[[nib]]
name = "node"
path = "not_found"
`);
const tomlObject = parse(tomlString);
assertEquals(tomlObject, obj);
Добавление в проект
deno add jsr:@std/toml
© 2018–2025 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/runtime/reference/std/toml