TextDecoder:decode() 方法

TextDecoder.decode() 方法返回一个包含从作为参数传递的缓冲区解码的文本的字符串。

解码方法在当前的 TextDecoder 对象中定义。这包括数据的预期编码以及如何处理解码错误。

语法

js
decode()
decode(buffer)
decode(buffer, options)

参数

buffer 可选

一个 ArrayBuffer、一个 TypedArray 或一个 DataView 对象,包含要解码的编码文本。

options 可选

一个带有以下属性的对象

stream

一个布尔标志,指示后续对 decode() 的调用中是否会有更多数据。如果分块处理数据,则设置为 true;对于最后一个块或数据未分块的情况,则设置为 false。默认为 false

异常

TypeError

如果属性 TextDecoder.fataltrue 且解码时发生错误,则抛出此异常。

返回值

一个字符串。

示例

此示例对欧元符号 € 进行编码和解码。

HTML

html
<p>Encoded value: <span id="encoded-value"></span></p>
<p>Decoded value: <span id="decoded-value"></span></p>

JavaScript

js
const encoder = new TextEncoder();
const array = encoder.encode("€"); // Uint8Array(3) [226, 130, 172]
document.getElementById("encoded-value").textContent = array;

const decoder = new TextDecoder();
const str = decoder.decode(array); // String "€"
document.getElementById("decoded-value").textContent = str;

结果

规范

规范
编码标准
# ref-for-dom-textdecoder-decode①

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅