TextDecoder.decode()
TextDecoder.decode()
方法返回一个字符串,其包含作为参数传递的缓冲区解码后的文本。
解码方法在当前的 TextDecoder
对象中定义。这包含了数据的预期编码,以及如何处理解码时发生的错误。
语法
js
decode()
decode(buffer)
decode(buffer, options)
参数
buffer
可选-
一个
ArrayBuffer
、TypedArray
或包含要解码的编码文本的DataView
对象。 options
可选-
具有以下属性的对象:
stream
-
一个布尔标志,表示在后续调用
decode()
将跟随附加数据。如果以分块的形式处理数据,则设置为true
;如果是最终的分块或者数据没有分块,则设置为false
。默认是false
。
异常
TypeError
-
当
TextDecoder.fatal
属性为true
时,若出现解码错误,则抛出该异常。
返回值
一个字符串。
示例
这个示例编码和解码欧元符号,€。
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;
结果
规范
Specification |
---|
Encoding Standard # ref-for-dom-textdecoder-decode① |
浏览器兼容性
BCD tables only load in the browser
参见
- 属于
TextDecoder
接口。