Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从对象获取javascript数组_Javascript_Node.js_Json_Database - Fatal编程技术网

从对象获取javascript数组

从对象获取javascript数组,javascript,node.js,json,database,Javascript,Node.js,Json,Database,我正在google auth聊天网站上工作,一切都很顺利,一切基本上都完成了,但最后一件事是从json数据库获取消息,我可以将消息发送到json数据库,但我无法从对象获取数组这是我的代码: index.js: socket.on('load', () => { for (let i in data) { socket.emit('add message', data[i]); } }); main.jshtml文件: socket.emit('lo

我正在google auth聊天网站上工作,一切都很顺利,一切基本上都完成了,但最后一件事是从json数据库获取消息,我可以将消息发送到json数据库,但我无法从对象获取数组这是我的代码:

index.js:

socket.on('load', () => {
    for (let i in data) {    
      socket.emit('add message', data[i]);
    }
  });
main.jshtml文件:

socket.emit('load');    
socket.on('add message', (text) => {
  let list = document.getElementById('list');    
  let li = document.createElement('li');
  li.textContent = text;
  list.appendChild(li)
});

来自节点json DB的传统json响应如下:

data = {
test: {
    data1 : {
        messages : ['test','array']
    },
    data2 : 5
  }
}
从这里开始,获取消息数组只需执行以下操作:

data.test.data1.messages
例如:

我使用的是一个json数据库,很抱歉,我会编辑评论!什么是数据变量?你是怎么得到的?它看起来像什么?json字符串?你能举一个变量内容的例子吗?如果我知道你不能解析任何数据,对吗?或者您可以指出代码中的确切错误吗?好的,这里是数据变量let JsonDB=require'node-json-db';设db=newjsondbmessage,true,false;让data=db.getData/messages;