URL.createObjectURL() - Web API 接口参考 编辑
URL.createObjectURL()
静态方法会创建一个 DOMString
,其中包含一个表示参数中给出的对象的URL。这个 URL 的生命周期和创建它的窗口中的 document
绑定。这个新的URL 对象表示指定的 File
对象或 Blob
对象。
注意:此特性在 Service Worker 中不可用,因为它有可能导致内存泄漏。
语法
objectURL = URL.createObjectURL(object);
参数
object
- 用于创建 URL 的
File
对象、Blob
对象或者MediaSource
对象。
返回值
一个DOMString
包含了一个对象URL,该URL可用于指定源 object
的内容。
示例
查看使用对象URL显示图片.
附注
内存管理
在每次调用 createObjectURL()
方法时,都会创建一个新的 URL 对象,即使你已经用相同的对象作为参数创建过。当不再需要这些 URL 对象时,每个对象必须通过调用 URL.revokeObjectURL()
方法来释放。
浏览器在 document 卸载的时候,会自动释放它们,但是为了获得最佳性能和内存使用状况,你应该在安全的时机主动释放掉它们。
使用相对URLs作为媒体流
在旧版本的媒体资源规范中,添加流作为<video>
元素需要创建一个关于 MediaStream
的对象URL。现已没必要这样做了,浏览器已经移除了该操作的支持。
重要:如果你为了去添加流作为媒体元素,而仍旧使用着依赖createObjectURL()
的代码,你需要更新的代码,仅需要设定srcObject
到`MediaStream
`即可。
规范
规范 | 状态 | 备注 |
---|---|---|
File API createObjectURL() | Working Draft | Initial definition. |
Media Source Extensions URL | Recommendation | MediaSource extension. Older versions of this specification used |
浏览器兼容性
BCD tables only load in the browser
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.相关链接
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论