JavaScript String fromCodePoint() 方法返回由指定的码位值序列创建的字符串。可以将一个或多个 Unicode 码位值传递给此方法。如果传递的值不是整数、小于 0(或负数)或大于 0x10FFFF,它将引发 RangeError 异常。此方法是静态的,可以使用类语法(如 String.fromCodePoint())调用,而不是在变量上调用它。
Unicode 码位是与 Unicode 标准中的特定字符相对应的数值。每个字符和符号都有自己唯一的 Unicode 码位值。
语法
以下是 JavaScript String fromCodePoint() 方法的语法 -
String.fromCodePoint(num1, num2, /*..., */ numN)
参数
此方法接受多个相同类型的参数,例如 'num1'、'num2'、'num3' 到 'numN',如下所述 -
- num1, num2....numN − 它是一个整数值,表示 [0, 0x10FFFF] 范围内的 Unicode 码位。
返回值
此方法返回由指定代码点序列创建的字符串。
示例 1
如果我们将单个 Unicode 码位值传递给此方法,它将返回一个只有一个字符的字符串。
在下面的示例中,我们使用 JavaScript String fromCodePoint() 方法来检索由指定的 Uni 码位值 65 创建的字符串。
<html>
<head>
<title>JavaScript 字符串 fromCodePoint() 方法</title>
</head>
<body>
<script>
const unicodepoint = 65;
document.write("统一编码点: ", unicodepoint);
document.write("<br>uni码点 ", unicodepoint, " 代表 ", String.fromCodePoint(unicodepoint));
</script>
</body>
</html>
输出
上面的程序返回一个字符串 “A”。
uni码点 65 代表 A
示例 2
如果传递了多个 Unicode 值,该方法将返回包含多个字符的字符串。
以下是 JavaScript String fromCodePoint() 方法的另一个示例。我们使用此方法检索包含由指定 uni 码序列 81、105、107、101、112、117、67、111、109 创建的多个字符的字符串。
<html>
<head>
<title>JavaScript 字符串 fromCodePoint() 方法</title>
</head>
<body>
<script>
const num1 = 81;
const num2 = 105;
const num3 = 107;
const num4 = 101;
const num5 = 112;
const num6 = 67;
const num7 = 111;
const num8 = 109;
document.write("统一码点值为: ", num1, ", ", num2, ", ", num3, ", ", num4, ", ", num5, ", ", num6, ", ", num7, ", ", num7, ", ", num8);
document.write("<br>已创建字符串: ", String.fromCodePoint(num1, num2, num3, num4, num5, num6, num7, num8));
</script>
</body>
</html>
输出
执行上述程序后,它将返回一个新字符串 “QikepuCom”。
已创建字符串: QikepCom
示例 3
如果 numN 不是整数、小于零或大于 0x10FFFF,它将引发 'RangeError' 异常。
<html>
<head>
<title>JavaScript 字符串 fromCodePoint() 方法</title>
</head>
<body>
<script>
const unicodepoint = -2;
document.write("统一编码点: ", unicodepoint);
try {
document.write("已创建字符串: ", String.fromCodePoint(unicodepoint));
} catch (error) {
document.write("<br>", error);
}
</script>
</body>
</html>
输出
执行上述程序后,它将引发 'RangeError' 异常。
RangeError: Invalid code point -2
示例 4
在下面给定的示例中,我们在 from 循环中使用 fromCodePoint() 方法检索一个字符串,其中包含由传递给该方法的数字一一创建的所有大写字母,循环从 65 开始迭代到 90。
<html>
<head>
<title>JavaScript 字符串 fromCodePoint() 方法</title>
</head>
<body>
<script>
const unicodepoint_start = 65;
document.write("Unicode起始于: ", unicodepoint_start);
document.write("<br>新建字符串: ");
for(let i = unicodepoint_start; i<=90; i++){
document.write(String.fromCodePoint(i));
}
</script>
</body>
</html>
输出
上面的程序返回一个包含所有大写字母的字符串 -
新建字符串: ABCDEFGHIJKLMNOPQRSTUVWXYZ