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.


var string = document.characterSet;


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


DOM Standard (DOM)
# ref-for-dom-document-characterset①

Browser compatibility

BCD tables only load in the browser