Javascript 在本地存储中存储图像是一个好主意吗?

Javascript 在本地存储中存储图像是一个好主意吗?,javascript,html,Javascript,Html,我正在制作一个HTML/Javascript工具,它可以处理图像。坦白地说,我只是使用HTML,因为java或C++ GUI太复杂了,不值得花精力。 该工具仅显示图像,然后在您悬停图像时显示百分比和绝对坐标: 我的目标是为“最后的图像”创建一个小GUI,允许快速显示最近的图像。由于应用程序仅限于客户端,所以我不能使用任何类型的服务器存储。有一个localStorage对象,但对我来说,在其中存储几MB的图像似乎不是个好主意 你觉得怎么样?我应该使用localStorage吗?还是有其他选择?或

我正在制作一个HTML/Javascript工具,它可以处理图像。坦白地说,我只是使用HTML,因为java或C++ GUI太复杂了,不值得花精力。 该工具仅显示图像,然后在您悬停图像时显示百分比和绝对坐标:

我的目标是为“最后的图像”创建一个小GUI,允许快速显示最近的图像。由于应用程序仅限于客户端,所以我不能使用任何类型的服务器存储。有一个
localStorage
对象,但对我来说,在其中存储几MB的图像似乎不是个好主意


你觉得怎么样?我应该使用
localStorage
吗?还是有其他选择?或者服务器合作是完全必要的?

要么如此,要么使用HTML5文件API,但是如果您只是在5mb以下保存一些图像就足够了,如下所示:

如果使用web存储,并将图像转换为文本(数据uri):

然后检索保存的图像:

var last = new Image();
  last.src = localStorage.getItem("lastImage1");
注意:大多数浏览器只允许5mb的本地存储

注意:虽然它受到高度支持,但在IE8中不受支持


注意:HTML文件API方法不会对用户友好,到目前为止,Chrome是唯一允许使用其文件系统API编写文件的方法,对于其他方法,您必须将图像转换为数据uri,然后以数据uri文本文件的形式与所有数据建立链接,让用户每次下载并重新加载


希望有帮助

可以使用压缩算法压缩图像的base64字符串表示形式。我在代码中使用了类似的方法,与正常情况相比,它使我能够存储更多的图像


压缩库:LZstring

您可以使用本地存储并将图像另存为Base64文件。但如果文件太大,则不建议使用本地存储。您可能需要使用一些后端程序。JS不擅长文件操作。是的,我知道怎么做。但我不太确定这样做是否合适。你们看过文件API了吗@斯图尔特,你呢?事实上,自从我经常使用javascript处理文件以来,我已经多次阅读了该文档。此API不提供任何函数,允许您保存数据(可能除了可能调用saveAs对话框窗口外),是否需要将文件、图像保存到客户端?如果可能,可以发布
html
js
?我想知道当另一个库生成压缩数据时base64的用途是什么。在这种情况下不能只对base64进行ommited吗?LZstring仅压缩字符串数据。此外,base64将比实际图像斑点更轻。
var last = new Image();
  last.src = localStorage.getItem("lastImage1");