Uint8Array.fromHex()

基准线 2025
新推出

自 ⁨2025 年 9 月⁩起,此功能适用于最新设备和浏览器版本。此功能可能不适用于较旧的设备或浏览器。

Uint8Array.fromHex() 静态方法根据十六进制字符串创建新的 Uint8Array 对象。

此方法会将字符串解析为字节数组。要将字符串转换为单个数字,请改用带有 radix 设置为 16parseInt() 函数。

语法

js
Uint8Array.fromHex(string)

参数

string

用于编码要转换为 Uint8Array 的字节的十六进制字符串。该字符串必须

  • 具有偶数个字符,因为两个字符编码一个字节。
  • 仅包含十六进制字母表中的字符,包括 0–9 和 A–F(不区分大小写)。
  • 不包含空格(与 Uint8Array.prototype.setFromBase64() 不同)。

返回值

一个包含从十六进制字符串解码出的字节的新 Uint8Array 对象。

异常

SyntaxError

如果输入字符串包含十六进制字母表之外的字符,或其长度为奇数,则会抛出此错误。

TypeError

如果输入字符串不是字符串,则会抛出此错误。

示例

解码十六进制字符串

此示例将十六进制字符串解码为 Uint8Array

js
const hexString = "cafed00d";
const bytes = Uint8Array.fromHex(hexString);
console.log(bytes); // Uint8Array [ 202, 254, 208, 13 ]

也支持大写字符

js
const hexString = "CAFEd00d";
const bytes = Uint8Array.fromHex(hexString);
console.log(bytes); // Uint8Array [ 202, 254, 208, 13 ]

规范

规范
Uint8Array 与 base64 的相互转换
# sec-uint8array.fromhex

浏览器兼容性

另见