punycode
**Встроенная в Node.js версия модуля punycode объявлена устаревшей. **В одной из будущих основных версий Node.js этот модуль будет удалён. Пользователям, которые сейчас зависят от модуля punycode, следует вместо него перейти на предоставляемый сообществом модуль Punycode.js. О кодировании URL на основе punycode см. url.domainToASCII или, в более общем случае, WHATWG URL API.
Модуль punycode — это встроенная версия модуля Punycode.js. К нему можно обратиться с помощью:
import punycode from 'node:punycode';
Punycode — это схема кодирования символов, определённая RFC 3492 и предназначенная в первую очередь для интернационализированных доменных имён. Поскольку имена хостов в URL могут содержать только символы ASCII, доменные имена с символами, не входящими в ASCII, необходимо преобразовать в ASCII с помощью схемы Punycode. Например, японский символ, который переводится на английский как 'example', — это '例'. Интернационализированное доменное имя '例.com' (эквивалентное 'example.com') представляется в Punycode строкой ASCII 'xn--fsq.com'.
Модуль punycode предоставляет простую реализацию стандарта Punycode.
Модуль punycode — это сторонняя зависимость, используемая Node.js и доступная разработчикам для удобства. Исправления и другие изменения модуля следует направлять в проект Punycode.js.
Использование в Deno
import * as mod from "node:punycode";
функция decode
Использование в Deno
import { decode } from "node:punycode";
decode(string: string): stringМетод punycode.decode() преобразует строку Punycode, состоящую только из символов ASCII, в соответствующую строку кодовых точек Unicode.
punycode.decode('maana-pta'); // 'mañana'
punycode.decode('--dqo34k'); // '☃-⌘'
Параметры
string: string Возвращаемый тип
string функция encode
Использование в Deno
import { encode } from "node:punycode";
encode(string: string): stringМетод punycode.encode() преобразует строку кодовых точек Unicode в строку Punycode, состоящую только из символов ASCII.
punycode.encode('mañana'); // 'maana-pta'
punycode.encode('☃-⌘'); // '--dqo34k'
Параметры
string: string Возвращаемый тип
string функция toASCII
Использование в Deno
import { toASCII } from "node:punycode";
toASCII(domain: string): stringМетод punycode.toASCII() преобразует строку Unicode, представляющую интернационализированное доменное имя, в Punycode. Преобразуются только части доменного имени, не входящие в ASCII. Вызов punycode.toASCII() для строки, содержащей только символы ASCII, не даст никакого эффекта.
// encode domain names
punycode.toASCII('mañana.com'); // 'xn--maana-pta.com'
punycode.toASCII('☃-⌘.com'); // 'xn----dqo34k.com'
punycode.toASCII('example.com'); // 'example.com'
Параметры
domain: string Возвращаемый тип
string функция toUnicode
Использование в Deno
import { toUnicode } from "node:punycode";
toUnicode(domain: string): stringМетод punycode.toUnicode() преобразует строку, представляющую доменное имя с символами, закодированными в Punycode, в Unicode. Преобразуются только части доменного имени, закодированные в Punycode.
// decode domain names
punycode.toUnicode('xn--maana-pta.com'); // 'mañana.com'
punycode.toUnicode('xn----dqo34k.com'); // '☃-⌘.com'
punycode.toUnicode('example.com'); // 'example.com'
Параметры
domain: string Возвращаемый тип
string интерфейс ucs2
Использование в Deno
import { type ucs2 } from "node:punycode";
переменная ucs2
начиная с v7.0.0 Встроенная в Node.js версия модуля punycode объявлена устаревшей. В одной из будущих основных версий Node.js этот модуль будет удалён. Пользователям, которые сейчас зависят от модуля punycode, следует вместо него перейти на предоставляемый сообществом модуль Punycode.js.
Тип
переменная version
Использование в Deno
import { version } from "node:punycode";
начиная с v7.0.0 Встроенная в Node.js версия модуля punycode объявлена устаревшей. В одной из будущих основных версий Node.js этот модуль будет удалён. Пользователям, которые сейчас зависят от модуля punycode, следует вместо него перейти на предоставляемый сообществом модуль Punycode.js.
Тип
string
© 2018–2025 the Deno authors
Licensed under the MIT License.
https://docs.deno.com/api/node/punycode