window.URL.createObjectURL 何时使用URL.revokeObjectURL(url)
时间: 2024-10-10 15:00:46 浏览: 37
浅谈js图片前端预览之filereader和window.URL.createObjectURL
`window.URL.createObjectURL()` 是浏览器提供的一个方法,用于创建一个表示特定媒体文件、Blob对象或Data URL 的唯一URL。当你需要将二进制数据、图片或其他类型的资源作为URL传递给DOM元素(如`<img>`标签)时,可以使用这个方法生成临时URL。
例如,在网页上预加载图片时,会先使用`createObjectURL`生成一个URL,然后设置到`src`属性:
```javascript
let img = new Image();
const blob = ...; // 图片 Blob 对象
img.src = URL.createObjectURL(blob);
```
当你不再需要这个URL时,应当使用 `URL.revokeObjectURL(url)` 来释放资源并避免内存泄漏。这通常发生在用户关闭窗口、页面卸载或主动删除对应的DOM元素时:
```javascript
img.onload = function() {
URL.revokeObjectURL(img.src); // 当图片加载完成后,撤销URL
};
```
阅读全文