使用loop和localStorage [JavaScript]保存所有变量
Saving all variables using loop and localStorage [JavaScript]
我想编写一段可以轻松保存所有变量的代码。通常我需要60个变量约120行。效率不高。我决定尝试用数组创建一个函数来保存所有变量。这好像行不通。
我的问题是,加载的变量是字符串,但我需要他们是浮动。
var variablelist = ["numb1","numb2","numb3","numb4","numb5"];
var variablelength = variablelist.length;
function save(){
for (var i = 0; i < variablelength; i++){
localStorage[variablelist[i]] = window[variablelist[i]];
}
}
function load(){
for (var i = 0; i < variablelength; i++){
window[variablelist[i]] = localStorage[variablelist[i]];
}
}
我试过了
window[variablelist[i]] = localStorage[parseFloat(variablelist[i])];
什么都没起作用。它仍然是一个字符串。有什么想法吗?
首先,看到这么多东西像那样存储在window对象上让我很伤心。你真的应该重新考虑一下!
LocalStorage是一种将键值对存储到浏览器内存以供以后访问的方法。唯一需要注意的是该值必须是字符串。
您可以使用JSON.stringify
和JSON.parse
函数来解决这个问题:
var objectToSave = {
key1: 'something',
key2: 'something else'
};
localStorage.setItem('myObject', JSON.stringify(objectToSave));
console.log(localStorage.getItem('myObject')); // What is stored
console.log(JSON.parse(localStorage.getItem('myObject'))); // The parsed object
否则,如果您设置保存所有单独的变量,您就不远了,您只需要使用getItem
和setItem
:
var variablelist = ["numb1","numb2","numb3","numb4","numb5"];
var variablelength = variablelist.length;
function save(){
for (var i = 0; i < variablelength; i++){
localStorage.setItem(variablelist[i], window[variablelist[i]]);
}
}
function load(){
for (var i = 0; i < variablelength; i++){
window[variablelist[i]] = localStorage.getItem(variablelist[i]);
}
}
使用localStore.setItem()
和localStore.getItem()
来存储和加载项。还可以使用JSON.stringify()
和JSON.parse()
将对象转换为文本,然后将其恢复为对象。
var variablelist = ["numb1","numb2","numb3","numb4","numb5"];
var variablelength = variablelist.length;
function save(){
for (var i = 0; i < variablelength; i++){
localStorage.setItem(variablelist[i], JSON.stringify(window[variablelist[i]]));
}
}
function load(){
for (var i = 0; i < variablelength; i++){
window[variablelist[i]] = JSON.parse(localStorage.getItem(variablelist[i]));
}
}
相关文章:
- 如何将getJson的响应保存在全局变量中
- 为所有查看网站的用户保存变量
- 关闭浏览器后保存变量
- 无法在Node.JS中保存变量
- 在 while 循环中保存变量
- 如何在移动到新的HTML页面后使用保存在Javascript文件中的保存变量
- PHP 会话不通过多个页面保存变量
- 保存变量
- 通过单击图像保存变量
- 在javascript中 - 保存变量作为参考
- 使用JavaScript onclick删除元素,并在SQL中保存变量
- 在cookie中保存变量- console.log返回具有会话id的变量
- JavaScript:在调用之间保存变量的值
- 如何在hta中保存变量,以便在关闭和打开hta后保存
- 在闭包中保存变量内容有问题
- 当html页面发生变化时,如何保存变量的状态
- 在闭包范围中保存变量
- Javascript 在使用 XMLHttpRequest 时通过作用域保存变量
- 在 cookie 中查找并保存变量
- 保存变量的值