如何将对象存储在全局数组或任何数据结构中,以便可以在程序中像数据库一样使用该数组

时间:2019-03-24 22:03:41

标签: node.js storage no-database

我真正想要的是在程序中的对象数组中本地存储一些数据,这样我就可以整天使用该数据,并且直到一天结束时,我都希望在不使用数据库的情况下将其删除。我有一个Json数据,我想将它们作为具有通用唯一标识符(uuid)的对象存储在数组或数据结构中,以便可以在程序中使用它,不能使用数据库,我认为我必须找到一种方法将对象存储在全局数组中,但是我想将新对象追加到该数组中,而不删除已存储在该数组中的对象。我正在使用Node js,我很确定有一种方法可以做到这一点,但是我不知道怎么做。我会提供一些帮助

我试图声明具有Array属性的类并将数据存储在该Array中,但是当我重新执行代码时,数据被删除并且丢失了Data,但是我必须在全局Array中找到一种类似于Local Storage的方式如果我将一些对象附加到该数组,则我的数据将是安全的;如果在例如关闭笔记本电脑或结束程序并关闭Vs Code的情况下,该数据将在一天结束时删除,则可以。我也尝试在其他文件中声明它,并从主程序中调用它,但没有任何效果

//这是一个用于创建通用唯一ID的库 const uuid = require(“ uuid / v1”);

var todo_list = {     待办事项:[],

register : function(todo) {
    this.todos.push({
        id : uuid(),
        todo: todo
    })},

size : function() {return this.todos.length },
display : function() {
    this.todos.forEach(t=> {
        console.log(t);
    });
} 

}

function createtodo(id, name, region) {
    return {
        id : id,
        name : name, 
        region : region
    };
}

todo_list.register(createtodo(2,"test6", "leipzig"));
console.log(todo_list.size());
console.log(todo_list.display());

我希望当注册一个新的待办事项时,它将被添加到待办事项数组属性中,而不是暂时替换待办事项中的实际内容。 如果我调用函数寄存器5次,那么5个对象将存储在我的todos数组中,但是如果我注释调用寄存器函数的代码并再次执行程序,那么我的数据将丢失并且size函数的结果将是0或未定义。我想要的结果是我的数据将存储在一个额外的全局数组中,即使更改代码后数据也不会丢失,但是我知道如果我以某种方式关闭程序,数据将会丢失

0 个答案:

没有答案