我正在从javascript文件中读取数组对象,然后在用户单击按钮时向其添加对象。但是,当我刷新页面或关闭浏览器并再次打开文件时,数组对象保持不变,即用户添加的项目不会反映在数组对象中。
有没有办法更新javascript变量,以便在javascript文件中更新?
答案 0 :(得分:0)
我会使用本地存储空间。这是使用localstorage的有用对象:
var LocalStorageManager = {
setValue: function(key, value) {
window.localStorage.setItem(key, JSON.stringify(value));
},
getValue: function(key) {
try {
return JSON.parse(window.localStorage.getItem(key));
} catch (e) {
}
}
};
您可以存储如下数据:
LocalStorageManager.setValue("key", data);
并检索这样的数据:
var data = LocalStorageManager.getValue("key");
没有localstorage:
function writeToFile(filename, string){
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fh = fso.OpenTextFile(filename, 8, false, 0);
fh.WriteLine(string);
fh.Close();
}
function readFile(filename){
var fso = new ActiveXObject("Scripting.FileSystemObject");
var fh = fso.OpenTextFile(filename, 1, false, 0);
var lines = "";
while (!fh.AtEndOfStream) {
lines += fh.ReadLine() + "\r";
}
fh.Close();
return lines;
}
这将是最简单的方法,在javascript中实现这一目标。在NodeJS中:
var fs = require('fs');
fs.writeFile("/tmp/test.txt", "Hey there!", function(err) {
if(err) {
return console.log(err);
}
console.log("The file was saved!");
});