TextDecoder.decode()

The TextDecoder.decode() method returns a string containing text decoded from the buffer passed as a parameter.

The decoding method is defined in the current TextDecoder object. This includes the expected encoding of the data, and how decoding errors are handled.

Syntax

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

Parameters

buffer Optional

Is an ArrayBuffer, a TypedArray or a DataView object containing the encoded text to decode.

options Optional

An object with the property:

stream

A boolean flag indicating that additional data will follow in subsequent calls to decode(). Set to true if processing the data in chunks, and false for the final chunk or if the data is not chunked. It defaults to false.

Exceptions

TypeError

Thrown if there is a decoding error when the property TextDecoder.fatal is true.

Return value

A string.

Examples

This example encodes and decodes the euro symbol, €.

HTML

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

JavaScript

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;

Result

Specifications

Specification
Encoding
# ref-for-dom-textdecoder-decode①

Browser compatibility

BCD tables only load in the browser

See also