File - 提供有关文件的信息

File 接口提供有关文件的信息,并允许网页中的 JavaScript 访问其内容。

File 对象通常是来自用户通过 <input> 元素选择文件后返回的 FileList 对象,或者是来自拖放操作产生的 <datatransfer> 对象,或者是来自 HTMLCanvasElementmozGetAsFile()API,在 Gecko 中,特权代码可以无需用户交互就创建代表任何本地文件的 File 对象(有关详细信息,请参阅实现说明)。

File 对象特殊类型的 Blob,可以在 Blob 可以使用的任何上下文中使用。比如 FileReaderURL.createObjectURL()createImageBitmap(),和 XMLHttpRequest.send() 都能处理 BlobFile

有关更多信息和示例,请参阅使用来自 Web 应用程序的文件

构造函数

File()

返回一个新构造的 File

属性

File.lastModified 只读

返回文件的最后修改时间,从 UNIX 纪元(1970 年 1 月 1 日午夜)开始,以毫秒为单位。

File.lastModifiedDate 只读

返回当前 File 对象所引用文件最后修改时间的 Date 对象。

File.name 只读

返回 File 对象引用的文件的名称。

File.webkitRelativePath 只读

返回 File 的 URL 相对于的路径。

File 实现了 Blob,因此它还具有以下可用属性:

File.size 只读

以字节为单位返回文件的大小。

File.type 只读

返回文件的 MIME类型。

方法

File 接口没有定义任何方法,但是继承了 Blob 接口的方法:

Blob.slice([start[, end[, contentType]]])

返回一个新的 Blob 对象,该对象包含源 Blob 的指定字节范围内的数据。

规范

规范 状态 备注
File API 工作草案 初始定义

桌面浏览器兼容性

特性 Chrome Edge Firefox Internet Explorer Opera Safari
基础支持 13 支持

7

3 — 71

10 11.5 6
File() constructor 13 不支持 7 不支持 11.5 10.1
lastModified 13 支持 15 10 16 不支持
lastModifiedDate 13 12 15 — 61 10 16 不支持
name 13 12 3.6 10 16 支持
type 13 支持 3.6 10 16 支持

移动浏览器兼容性

特性 Android Chrome for Android Edge mobile Firefox for Android IE mobile Opera Android iOS Safari
基础支持 支持 支持 支持

7

4 — 71

未知 11.1 6
File() constructor 支持 支持 支持 7 未知 不支持 6
lastModified 支持 支持 支持 不支持 未知 不支持 不支持
lastModifiedDate 支持 支持 支持 不支持 未知 不支持 不支持
name 支持 支持 支持 不支持 未知 不支持 不支持
type 支持 支持 支持 不支持 未知 不支持 不支持

1. 非标准的实现。

实现说明

相关链接