FileReader: readyState property

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 readyState read-only property of the FileReader interface provides the current state of the reading operation. This will be one of the states: EMPTY, LOADING, or DONE.

Value

A number which is one of the three possible state constants defined on the FileReader interface:

FileReader.EMPTY (0)

Reader has been created, but none of the read methods have been called yet.

FileReader.LOADING (1)

A read method has been called. A File or Blob is being read, and no error has occurred yet.

FileReader.DONE (2)

The read operation is complete. This could mean that: the entire File or Blob has been read into memory, a file read error occurred, or abort() was called and the read was cancelled.

Examples

js
const reader = new FileReader();
console.log("EMPTY", reader.readyState); // readyState will be 0

reader.readAsText(blob);
console.log("LOADING", reader.readyState); // readyState will be 1

reader.onloadend = () => {
  console.log("DONE", reader.readyState); // readyState will be 2
};

Specifications

Specification
File API
# dom-filereader-readystate

Browser compatibility

BCD tables only load in the browser

See also