我正在尝试使用URL.createObjectURL
显示图片。但是,它需要大量的内存,大约是图像大小的10倍。
这是我的代码:
var image = new Image();
image.src = URL.createObjectURL(blob);
image.className = 'images';
image.onload = function(){
URL.revokeObjectURL(this.src);
};
$('.images').appendTo('body');
这是一个浏览器错误吗?或者我的代码出了什么问题?
答案 0 :(得分:5)
实际上,当您释放以前通过调用URL.revokeObjectURL()创建的现有对象URL以获得最佳性能和内存使用时,如果有明确卸载它们的安全时间,则会调用window.URL.createObjectURL()。
但是您无法通过创建对象来节省内存,请阅读此answer和此helper link。