TextEncoder

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

Note: This feature is available in Web Workers.

The TextEncoder interface takes a stream of code points as input and emits a stream of UTF-8 bytes.

Constructor

TextEncoder()

Returns a newly constructed TextEncoder that will generate a byte stream with UTF-8 encoding.

Instance properties

The TextEncoder interface doesn't inherit any properties.

TextEncoder.encoding Read only

Always returns utf-8.

Instance methods

The TextEncoder interface doesn't inherit any methods.

TextEncoder.encode()

Takes a string as input, and returns a Uint8Array containing UTF-8 encoded text.

TextEncoder.encodeInto()

Takes a string to encode and a destination Uint8Array to put resulting UTF-8 encoded text into, and returns an object indicating the progress of the encoding. This is potentially more performant than the older encode() method.

Examples

js
const encoder = new TextEncoder();
const view = encoder.encode("€");
console.log(view); // Uint8Array(3) [226, 130, 172]

Specifications

Specification
Encoding Standard
# interface-textencoder

Browser compatibility

BCD tables only load in the browser

See also