javascript - 使用 Node.js 从 Redis 列表中删除一个元素

标签 javascript node.js redis node-redis

我试图用 nodejs 在 redis 中管理一个列表。我可以使用以下代码存储列表:

client.rpush(['room_'+room, data.customClient], function(err, reply) {

        client.lrange('room_'+room, 0, -1, function(err, reply) {
          console.log(reply);
      });
    });

控制台输出为

[ 'POanqn9llyTcuIurUPAN', 'm9vd57wecp6JvtHOrRSJ' ]

现在我想从这个列表中删除一个键POanqn9llyTcuIurUPAN。我该怎么做?

最佳答案

可以通过lrem 命令来完成。删除具有该值的所有条目的用法是:

client.lrem('room_'+room, data.customClient, 0, 'POanqn9llyTcuIurUPAN', function(err, data){
    console.log(data); // Tells how many entries got deleted from the list
});

这里 0 是一个计数,告诉我们删除给定列表中所有值为 POanqn9llyTcuIurUPAN 的条目。来自 https://redis.io/commands/lrem计数的可能值可能是:

  • count > 0:从头到尾移除等于 value 的元素。
  • count < 0: 从尾部到头部删除等于 value 的元素。
  • count = 0:删除所有等于值的元素。

关于javascript - 使用 Node.js 从 Redis 列表中删除一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37840323/

相关文章:

javascript - 按带有 ":"(冒号)的属性选择元素

javascript - 在 node.js 中从数据库中获取非英文字符时出现编码问题

django - 如何在Windows机器上用django测试 celery

PHP 向 Node/Socket.IO 服务器发送消息

node.js - url.searchParams 在node.js 中返回未定义

redis - 将列表存储在 redis 中会比很多键更有效吗?

data-structures - 具有经典数据结构的 Firebase

javascript - 使用 JavaScript 浏览 JSON

javascript - 嵌套的 transclude 指令在错误的位置呈现内部 transcluded 内容

javascript - 在 fnCreatedCell 中使用 font-awesome