You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改代码以同时获取符合条件的localStorage条目的键名与值

如何修改代码以同时获取符合条件的localStorage条目的键名与值

嘿,这事儿超简单,我来给你捋明白~

你原来的代码已经成功过滤出了包含doinclude的localStorage键名,但在映射环节只提取了解析后的值,所以最终todos数组里只有值、没有对应的键名。要同时拿到键名和对应的值,只需要调整map方法的返回值,把键名也一起封装进对象里就行。

修改后的代码如下:

const keys = Object.keys(localStorage).filter(key => key.includes('doinclude'));
const todos = keys.map(key => ({
  name: key,
  value: JSON.parse(localStorage.getItem(key))
}));

简单说明:

  • 我们在map的回调函数里,返回了一个新对象:用name字段存储localStorage的键名,value字段存储解析后对应的值
  • 最终todos数组里的每一个元素都会是{ name: '符合条件的键名', value: '解析后的值' }这样的结构,后续使用时就能轻松获取到键名和对应的值啦

举个直观的例子:如果你的localStorage里有doinclude_todo1和doinclude_todo2两个条目,那todos的结构大概会是这样:

[
  { name: 'doinclude_todo1', value: { /* 解析后的值对象 */ } },
  { name: 'doinclude_todo2', value: { /* 解析后的值对象 */ } }
]

备注:内容来源于stack exchange,提问作者Cymro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 13:29:27