如何从Redis获取所有数据到Javascript数组

时间:2014-04-30 06:05:15

标签: javascript arrays redis node-redis

var redis = require('redis');
var client = redis.createClient();
var coordiante = [];
multi = client.multi();
multi.exec(function(err, res) {
client.lrange('S4' , 0 ,5 ,function(err, len){
     len.forEach(function (index,item) {
        coordiante[item] = index;
  })
     client.quit();
 });
});
console.log(coordiante);

我想在这里使用坐标数组,但坐标是空的。

2 个答案:

答案 0 :(得分:0)

您是否通过在以下循环中放入console.log来检查您是否得到了正确的响应:

   multi.exec(function(err, res) {
     console.log(res);
     console.log(err);
     client.lrange('S4' , 0 ,5 ,function(err, len){
       console.log(len);
         len.forEach(function (index,item) {
         coordiante[item] = index;
       })
      client.quit();
     });
    });

答案 1 :(得分:0)

如果我们继续node_redis项目页面并准确地阅读它,我们将会遇到这些字符串。

client.hgetall(哈希,回调)

HGETALL命令的回复将转换为 JavaScript    node_redis的对象。这样您就可以与响应进行交互    使用JavaScript语法。

Example:

client.hmset("hosts", "mjr", "1", "another", "23", "home", "1234");
client.hgetall("hosts", function (err, obj) {
  console.dir(obj);
});
Output:

{ mjr: '1', another: '23', home: '1234' }

所以你需要做的就是client.hgetall()