The File() constructor creates a new File object instance.


new File(bits, name[, options]);


An Array of ArrayBuffer, ArrayBufferView, Blob, USVString objects, or a mix of any of such objects, that will be put inside the File. USVString objects are encoded as UTF-8.
A USVString representing the file name or the path to the file.
options Optional
An options object containing optional attributes for the file. Available options are as follows:
  • type: A DOMString representing the MIME type of the content that will be put into the file. Defaults to a value of "".
  • lastModified: A number representing the number of milliseconds between the Unix time epoch and when the file was last modified. Defaults to a value of


var file = new File(["foo"], "foo.txt", {
  type: "text/plain",


Specification Status Comment
File API Working Draft Initial definition

Browser compatibility

Update compatibility data on GitHub
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
File() constructorChrome Full support 38Edge Full support 79Firefox Full support 28IE No support NoOpera Full support 25Safari Full support 10WebView Android Full support 38Chrome Android Full support 38Firefox Android Full support 28Opera Android Full support 25Safari iOS Full support 10Samsung Internet Android Full support 3.0


Full support  
Full support
No support  
No support

See also