更改javascript变量并将其保存到文件中

时间:2015-11-16 04:11:18

标签: javascript arrays variables

我正在从javascript文件中读取数组对象,然后在用户单击按钮时向其添加对象。但是,当我刷新页面或关闭浏览器并再次打开文件时,数组对象保持不变,即用户添加的项目不会反映在数组对象中。

有没有办法更新javascript变量,以便在javascript文件中更新?

1 个答案:

答案 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!");
});