Javascript 如何将多个base64值存储到阵列?
请查看我的JSFIDLE代码: 到目前为止,我已经有了它,所以当上传图像时,它被转换成base64格式,然后存储在localStorage中。但是,我希望每次有人将图像输入到输入字段时,每个输入都被推入一个数组中,并且可以在需要时调用该数组的值。我该怎么做 JavaScript代码Javascript 如何将多个base64值存储到阵列?,javascript,html,Javascript,Html,请查看我的JSFIDLE代码: 到目前为止,我已经有了它,所以当上传图像时,它被转换成base64格式,然后存储在localStorage中。但是,我希望每次有人将图像输入到输入字段时,每个输入都被推入一个数组中,并且可以在需要时调用该数组的值。我该怎么做 JavaScript代码 var数组=[] 函数myFunction(){ const file=document.querySelector(“#uploadImage”).files[0]; var reader=new FileRea
var数组=[]
函数myFunction(){
const file=document.querySelector(“#uploadImage”).files[0];
var reader=new FileReader();
reader.readAsDataURL(文件);
reader.onload=函数(){
setItem(“image”,reader.result);
document.getElementById(“imagePreview”).setAttribute(“src”,localStorage.getItem(“image”))
};
}
if(localStorage.getItem(“图像”))
document.getElementById(“imagePreview”).setAttribute(“src”,localStorage.getItem(“image”))
函数clr(){
localStorage.clear()
location.reload()
}
img{
最大宽度:300px;
}
提交图片
清除本地存储
以JSON格式将JavaScript数组存储到本地存储:
localStorage.setItem("images", JSON.stringify(myImages));
从localStorage检索JSON并转换回阵列:
let myImages = [];
myImages = JSON.parse(localStorage.getItem("images"));
但正如下面的一条评论所提到的,localStorage有5MB的限制,因此更好的存储方法可能是IndexedDB,它有更高的限制。我问的是另一个问题。存储在broswer限制为5MB的localStorage中不是一个好的解决方案5Mb@hiphopfeels那么,请描述一下你被困在哪里。你不知道如何推到数组上吗?请看我的代码。我不知道如何将event.target.result的值推送到数组中以存储到本地存储。
myArray.push(event.target.result)
将执行您想要的操作。