1.初始化

const Redis = require('ioredis');// 创建 Redis 客户端实例,设置默认过期时间
const redis = new Redis({host: '127.0.0.1',port: 6379,password: 'password',// 设置默认过期时间为 60 秒defaultExpiry: 60,
});

可以在初始化 Redis 客户端实例时指定默认的过期时间,它将用于设置 Redis 中的键值对的过期时间。

这样,在后续执行 Redis 命令时,如果没有指定具体的过期时间,将使用该默认过期时间设置键值对的过期时间。

2.列表操作 list

2.1 添加元素到列表

// 添加元素到列表中
redis.lpush('list-name', 'item1', 'item2', 'item3');

list-name 就是列表的 key,列表名,后面是添加的元素。
lpush: 表示从左侧添加,顾名思义,还有rpush, 从右侧添加。

2.2 获取列表元素

// 获取列表中的所有元素
redis.lrange('list-name', 0, -1).then((result) => {console.log(result);
});

可以自己指定下标,获取区间元素。0,-1 是获取所有元素。

2.3 获取列表长度

// 获取列表长度
redis.llen('list-name').then((result) => {console.log(result);
});

2.4 删除元素

// 删除列表中的元素
redis.lrem('list-name', 1, 'item1').then((result) => {console.log(result);
});

参数介绍:

  • 列表的 key 值。
  • 要删除的元素个数。它有三种取值:
    • 如果传入 0,表示删除所有等于第三个参数 value 的元素;
    • 如果传入一个正数 n,表示删除最多 n 个等于 value 的元素;
    • 如果传入一个负数 -n,表示删除最多 n 个等于 value 的元素,并且从尾部开始向前遍历列表删除元素,例如 -1 表示从尾部开始删除第一个值等于 value 的元素。
  • 要删除的元素的值。

2.5 根据下标获取元素

[‘ni’, ‘hello’, ‘hhha’]

// 根据下标获取元素
redis.lindex('list-name', 1, (err, result) => {console.log(result); // 输出 'hello'
});

2.6 限定长度,截取

redis.ltrim("list-name", 0, 5);

保留最近的6个。

2.7 删除最早的元素pop

redis.lpop("list-name");  // 删除最早的元素

3. 键值对操作

设置 key 的值为 value:
redis.set("key", "value");//获取 key 对应的值:
redis.get("key", (err, result) => {console.log(result);
});//判断键是否存在:
redis.exists("key", (err, result) => {if (result === 1) {console.log("key exists");} else {console.log("key does not exist");}
});//删除键:
redis.del("key");//设置键的过期时间:
redis.expire("key", 30);  // 30 秒后过期//自增计数器:
redis.incr("counter", (err, result) => {console.log(result);
});//自减计数器:
redis.decr("counter", (err, result) => {console.log(result);
});//添加元素到集合:
redis.sadd("myset", "value1", "value2", "value3");//删除集合中的元素:
redis.srem("myset", "value1", "value2");//获取集合中所有成员:
redis.smembers("myset", (err, result) => {console.log(result);
});

nodejs中使用ioredis库操作redis相关推荐

  1. Nodejs中使用ioredis库

    前言 Redis简介 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings), 散列(hashe ...

  2. java 中通过 Lettuce 来操作 Redis

    spring-data-redis文档: https://docs.spring.io/spring-data/redis/docs/2.0.1.RELEASE/reference/html/#new ...

  3. [转载] python怎么获取redis中的数据_python操作redis数据库

    参考链接: 使用Python在Selenium中进行非阻塞等待 3.redis基本命令 String set(name, value, ex=None, px=None, nx=False, xx=F ...

  4. 用Python中的py2neo库操作neo4j,搭建简单关联图谱—基于家有儿女中的人物关系

         我第一次建立关联图谱用的是R语言,通过写代码帮公安挖掘团伙犯罪,并用图形展示团伙之间的关联关系.如有需要请关注 "阿黎逸阳的代码" 公众号的后续文章,会手把手教大家用R搭 ...

  5. c++使用hiredis库操作redis讲解

           做服务端开发基本都会用到redis,java调用redis就简单了,教程很多,库也都是现成的,多数会选择jedis库吧,但是c++调用redis就麻烦一点,基本都要自己编译才行.虽然支持 ...

  6. Android中调用.so库操作步骤

    参考:http://www.cnblogs.com/anyanran/archive/2010/11/22/ndk1.html http://www.cnblogs.com/sevenyuan/p/4 ...

  7. js实现modbus_nodejs中使用modbus-serial库创建Modbus TCP读取设备的数据

    nodejs中使用modbus-serial库创建Modbus TCP读取设备的数据 在nodejs中安装modbus-serial库 本人使用的开发环境是Windows10下的VSCode,安装并配 ...

  8. 用python中的turtle库绘制一些有趣的图

    最近有个在读大学的女生,想要我帮忙用python画几个图,在画的过程中觉得有些图还挺有意思的,分享给大家.    1 图1    第一个图是蚊香,感兴趣的小伙伴可以自己尝试在python中用turtl ...

  9. nodejs中生成uuid

    nodejs中生成uuid nodejs中有一个uuid的生成库uuid:https://www.npmjs.com/package/uuid,使用起来非常简单. 快速开始 要创建随机UUID,可以使 ...

最新文章

  1. Waymo无人卡车高调重返凤凰城,但货运先机已失
  2. 《软件工程方法与实践》—— 3.4 面向对象模型
  3. nagios监控windows USBKEY
  4. JVM调优总结(二)-一些概念
  5. 3DSlicer27:OpenIGTLinkIF
  6. ICCV 2021 | 腾讯、华中科大提出QueryInst,开启基于Query的实例分割新思路
  7. 每个开发人员现在应该下载的十种必备工具
  8. vue项目安装less_部署vue项目、安装mongodb
  9. 局域网lan设置_4G工业路由器的WAN、LAN组网方式
  10. 华为鸿蒙系统和苹果系统哪个更好,华为鸿蒙OS和安卓、IOS相比有哪些特色 关于鸿蒙OS不得不知的十个问题...
  11. python定义初始化函数_Python 语言定义的Class的初始化函数的函数名是( )
  12. XManager 远程访问 Ubuntu16.04 图形界面
  13. 12. JavaScript Number 对象
  14. 可拖拽GridView代码解析
  15. excel趋势线公式导出_除了类 Excel, SpreadJS 表格控件还能为系统开发带来什么价值?...
  16. 什么是CMMI能力成熟度模型?企业为什么要做?
  17. 扩展lucas学习笔记
  18. 如何制作Android.9图片
  19. JavaWeb登陆成功后跳转到上一个页面
  20. JFreeChart饼状图显示百分比

热门文章

  1. 成功解决Unable to allocate xxx MiB for an array with shape (xxxx, xxxx)
  2. MuiPlayer - 一款优秀的 H5 视频播放器框架
  3. 【2020年天梯赛校选赛】7-16 愤怒的牛
  4. Android 检测辅助功能是否开启,并调整设置页面
  5. 实验(六):定时器实验
  6. VMware NAT 模式配置端口映射
  7. 开源课设-宠物诊所管理系统
  8. Debian系linux配置wifi连接|笔记本
  9. and true和if都是python语言的保留字_python自学 第三章 python语言基础之保留字、标识符与内置函数...
  10. 二级域名怎么解析,在线求解