Spec-Zone.ru › Deno 2

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";

Методы

decode(string: string): number[]
устарело
encode(codePoints: readonly number[]): string
устарело

переменная ucs2

Устарело

начиная с v7.0.0 Встроенная в Node.js версия модуля punycode объявлена устаревшей. В одной из будущих основных версий Node.js этот модуль будет удалён. Пользователям, которые сейчас зависят от модуля punycode, следует вместо него перейти на предоставляемый сообществом модуль Punycode.js.

Тип

ucs2

переменная 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API