Get to know MDN better
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Note: This feature is available in Web Workers.
The result read-only property of the FileReader interface returns the file's contents. This property is only valid after the read operation is complete, and the format of the data depends on which of the methods was used to initiate the read operation.
An appropriate string or ArrayBuffer based on which of the reading methods was used to initiate the read operation. The value is null if the reading is not yet complete or was unsuccessful.
The result types are described below.
| readAsArrayBuffer() | The result is a JavaScript ArrayBuffer containing binary data. |
| readAsBinaryString() | The result contains the raw binary data from the file in a string. |
| readAsDataURL() | The result is a string with a data: URL representing the file's data. |
| readAsText() | The result is text in a string. |
This example presents a function reader() which reads a file from a file input. It works by creating a FileReader object and creating a listener for load events, such that when then file is read, the result is obtained and passed to the callback function provided to reader().
The content is handled as raw text data.
Given the asynchronous nature of FileReader, you could use a Promise-based approach. Here's an example for a file input with attribute multiple that returns a Promise.
| File API # dom-filereader-result |
Enable JavaScript to view this browser compatibility table.
This page was last modified on Apr 10, 2025 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.