The FileReader readyState property provides the current state of the reading operation a FileReader is in. A FileReader exists in one of the following states:

Value State Description
0 EMPTY Reader has been created. None of the read methods called yet.
1 LOADING A read method has been called.
2 DONE The operation is complete.
The FileReader has been created, but no readAs method was called yet.
A readAs method was invoked. A File or Blob is being read, and no error has occurred yet.
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.


var reader = new FileReader();
console.log('EMPTY', reader.readyState); // readyState will be 0

console.log('LOADING', reader.readyState); // readyState will be 1

reader.onloadend = function () {
  console.log('DONE', reader.readyState); // readyState will be 2


A number which is one of the three possible state constants define for the FileReader API.


Specification Status Comment
File API
The definition of 'readyState' in that specification.
Working Draft Initial definition

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
readyStateChrome Full support 7Edge Full support 12Firefox Full support 3.6IE Full support 10Opera Full support 11Safari Full support 6WebView Android Full support YesChrome Android Full support YesFirefox Android Full support 32Opera Android Full support 11Safari iOS Full support 6.1Samsung Internet Android Full support Yes


Full support  
Full support

See also