This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
TextEncoder takes a stream of code points as input and emits a stream of bytes. For a more scalable, non-native library, see StringView
– a C-like representation of strings based on typed arrays.
Note: Firefox, Chrome and Opera used to have support for encoding types other than utf-8
(such as utf-16
, iso-8859-2
, koi8
, cp1261
, and gbk
). As of Firefox 48 (ticket), Chrome 54 (ticket) and Opera 41, no other encoding types are available other than utf-8
, in order to match the spec. In all cases, passing in an encoding type to the constructor will be ignored and a utf-8 TextEncoder will be created (the TextDecoder still allows for other decoding types).
Note: There is a polyfill implementation to support all the legacy encodings in GitHub.
Constructor
TextEncoder()
- Returns a newly constructed
TextEncoder
that will generate a byte stream with utf-8 encoding.
Properties
The TextEncoder
interface doesn't inherit any property.
TextEncoder.encoding
Read only- Is a
DOMString
containing the name of the encoder, that is a string describing the method theTextEncoder
will use.
Methods
The TextEncoder
interface doesn't inherit any method.
TextEncoder.encode()
- Returns a
Uint8Array
containing utf-8 encoded text.
Specifications
Specification | Status | Comment |
---|---|---|
Encoding The definition of 'TextEncoder' in that specification. |
Living Standard | Initial definition. |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|
Basic support | 38 | 19.0 (19.0) [1] | No support | 25 | No support |
Available in Web Workers | 38 | 20.0 (20.0) | No support | 25 | No support |
Feature | Android Webview | Chrome for Android | Firefox Mobile (Gecko) | Firefox OS | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | 38 | 38 | 19.0 (19.0) [1] | 1.0.1 (19.0) | No support | ? | No support |
Available in Web Workers | 38 | 38 | 20.0 (20.0) | 1.0.1 (20.0) | No support | ? | No support |
[1] An earlier, and slightly different, version of the specification was implemented in Firefox 18.
[2] As of Firefox 48, Chrome 54 and Opera 41, no other encoding types are allowed other than utf-8.
See also
- The
TextDecoder
interface describing the inverse operation. StringView
– a C-like representation of strings based on typed arrays- A shim allowing to use this interface in browsers that don't support it.
- Components.utils.importGlobalProperties