The Document.characterSet read-only property returns the character encoding of the document that it's currently rendered with. (A character encoding is a set of characters and how to interpret bytes into those characters.)

A “character set” and a “character encoding” are related, but different. Despite the name of this property, it returns the encoding.

Users can override the developer-specified encoding inside the Content-Type header or inline like <meta charset="utf-8">, such as with Firefox's View → Text Encoding menu. This override is provided to fix incorrect developer-specified encodings that result in garbled text.

The properties document.charset and document.inputEncoding are legacy aliases for document.characterSet. Do not use them any more.

Syntax

var string = document.characterSet;

Examples

<button onclick="console.log(document.characterSet);">
  Log character encoding
</button>
<!-- displays document's character encoding in the dev console, such as "ISO-8859-1" or "UTF-8" -->

Specifications

Specification Status Comment
DOM
The definition of 'characterSet' in that specification.
Living Standard Initial definition.

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support

45

Yes1 2

Yes3

Yes

Yes2

?3

Yes

442

Yes3

?

?2

?3

?

?2

?3

?

92

?3

FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support

45

Yes2

Yes3

45

Yes2

Yes3

Yes

Yes2

?3

Yes

442

Yes3

?

?2

?3

?

?2

?3

?

1. charset alias was made read-only in 45.

2. Supported as charset.

3. Supported as inputEncoding.

Document Tags and Contributors

Last updated by: Tigt,