{ "source": "doc/api/punycode.md", "modules": [ { "textRaw": "Punycode", "name": "punycode", "stability": 2, "stabilityText": "Stable", "desc": "

Punycode.js is bundled with Node.js v0.5.1+. Use require('punycode') to\naccess it. (To use it with other Node.js versions, use npm to install the\npunycode module first.)

\n", "methods": [ { "textRaw": "punycode.decode(string)", "type": "method", "name": "decode", "meta": { "added": [ "v0.5.1" ] }, "desc": "

Converts a Punycode string of ASCII-only symbols to a string of Unicode symbols.

\n
// decode domain name parts\npunycode.decode('maana-pta'); // 'mañana'\npunycode.decode('--dqo34k'); // '☃-⌘'\n
\n", "signatures": [ { "params": [ { "name": "string" } ] } ] }, { "textRaw": "punycode.encode(string)", "type": "method", "name": "encode", "meta": { "added": [ "v0.5.1" ] }, "desc": "

Converts a string of Unicode symbols to a Punycode string of ASCII-only symbols.

\n
// encode domain name parts\npunycode.encode('mañana'); // 'maana-pta'\npunycode.encode('☃-⌘'); // '--dqo34k'\n
\n", "signatures": [ { "params": [ { "name": "string" } ] } ] }, { "textRaw": "punycode.toASCII(domain)", "type": "method", "name": "toASCII", "meta": { "added": [ "v0.6.1" ] }, "desc": "

Converts a Unicode string representing a domain name to Punycode. Only the\nnon-ASCII parts of the domain name will be converted, i.e. it doesn't matter if\nyou call it with a domain that's already in ASCII.

\n
// encode domain names\npunycode.toASCII('mañana.com'); // 'xn--maana-pta.com'\npunycode.toASCII('☃-⌘.com'); // 'xn----dqo34k.com'\n
\n", "signatures": [ { "params": [ { "name": "domain" } ] } ] }, { "textRaw": "punycode.toUnicode(domain)", "type": "method", "name": "toUnicode", "meta": { "added": [ "v0.6.1" ] }, "desc": "

Converts a Punycode string representing a domain name to Unicode. Only the\nPunycoded parts of the domain name will be converted, i.e. it doesn't matter if\nyou call it on a string that has already been converted to Unicode.

\n
// decode domain names\npunycode.toUnicode('xn--maana-pta.com'); // 'mañana.com'\npunycode.toUnicode('xn----dqo34k.com'); // '☃-⌘.com'\n
\n", "signatures": [ { "params": [ { "name": "domain" } ] } ] } ], "properties": [ { "textRaw": "punycode.ucs2", "name": "ucs2", "meta": { "added": [ "v0.7.0" ] }, "modules": [ { "textRaw": "punycode.ucs2.decode(string)", "name": "punycode.ucs2.decode(string)", "meta": { "added": [ "v0.7.0" ] }, "desc": "

Creates an array containing the numeric code point values of each Unicode\nsymbol in the string. While JavaScript uses UCS-2 internally, this function\nwill convert a pair of surrogate halves (each of which UCS-2 exposes as\nseparate characters) into a single code point, matching UTF-16.

\n
punycode.ucs2.decode('abc'); // [0x61, 0x62, 0x63]\n// surrogate pair for U+1D306 tetragram for centre:\npunycode.ucs2.decode('\\uD834\\uDF06'); // [0x1D306]\n
\n", "type": "module", "displayName": "punycode.ucs2.decode(string)" }, { "textRaw": "punycode.ucs2.encode(codePoints)", "name": "punycode.ucs2.encode(codepoints)", "meta": { "added": [ "v0.7.0" ] }, "desc": "

Creates a string based on an array of numeric code point values.

\n
punycode.ucs2.encode([0x61, 0x62, 0x63]); // 'abc'\npunycode.ucs2.encode([0x1D306]); // '\\uD834\\uDF06'\n
\n", "type": "module", "displayName": "punycode.ucs2.encode(codePoints)" } ] }, { "textRaw": "punycode.version", "name": "version", "meta": { "added": [ "v0.6.1" ] }, "desc": "

A string representing the current Punycode.js version number.

\n" } ], "type": "module", "displayName": "Punycode" } ] }