node.js - 如何使用 Redis 数据库根据以毫秒为单位的时间对 node.js 中的数组进行排序

标签 node.js redis

我正在尝试根据时间(毫秒)对包含 Id 和 Time 的数组进行排序。

Map.sort(function(a,b){return a.Time-b.Time});
for (keys in Map) {
    multi.hgetall(Map[key].id+':List');                     
}
multi.exec(function(err,data){                       
        res.send(data);
});

它不显示任何数据。该数组中有 3 个 ID。

最佳答案

我不知道你的代码中的 res 是什么。即使您将变量命名为 keys,您也会在这句话中获得数组索引:

for(keys in Map){...}

尝试这样的事情,使用 forEach 迭代器:

Map=[{'id':'a', 'Time':90}, {'id':'c', 'Time':30}, {'id':'b', 'Time':66}]

Map.forEach(function(item){
    console.log(item);
    multi.hgetall(item.id + ':List');
});
multi.exec(function(err, data){                       
    console.log('data', data);
});

如果 a:Listb:Listc:List 键存在于您的 redis 数据库中,它应该打印一些数据。

关于node.js - 如何使用 Redis 数据库根据以毫秒为单位的时间对 node.js 中的数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13083472/

相关文章:

javascript - NodeJS 只是挂起,没有错误,没有崩溃

node.js - Node JS TCP 服务器没有立即刷新缓冲区中的数据

c - C中结构属性的 "dot"定义是什么

Heroku 网站 - REDIS HOST 凭证在哪里?

redis - 使用 stackexchange.Redis 批量删除?

node.js - NodeJS Express - 同一端口上的两个 NodeJS 实例(vhost)

node.js - 异常地方Node.JS异步错误的合理处理方案

spring-boot - Spring Boot redisTemplate Autowiring 失败

asynchronous - 如何在不修改ulimit的情况下处理nodejs EMFILE异常?

node.js - Heroku 上的 Redis 连接错误 : 127. 0.0.1 而不是 REDIS_URL