localstorage 不提供直接获取键名索引的功能,但可通过 localstorage.length 获取总数,并用 localstorage.key(i) 按 0 到 length-1 的连续索引访问键名;索引顺序依赖浏览器实现,删除键后索引自动前移,无空缺。

LocalStorage 本身没有直接提供“获取当前存储占用的键名索引”这个功能。它不维护键的插入顺序,也不暴露内部索引编号。但你可以通过 Object.keys(localStorage) 或 localStorage.key(i) 获取所有键,并按顺序访问——这里的 i 就是所谓的“索引”,从 0 开始递增,对应键在内部枚举时的顺序(通常是插入顺序,但不是标准保证)。
获取所有键名并遍历索引
最常用的方式是用 localStorage.length 得到总数量,再用 localStorage.key(index) 按索引取键名:
-
localStorage.length返回当前存储的键值对总数 -
localStorage.key(i)返回第i个键名(i范围是0到localStorage.length - 1) - 例如:
localStorage.key(0)是第一个存入的键(多数浏览器下),localStorage.key(1)是第二个……
把所有键和索引一起列出来
如果你想一次性拿到「键名 → 索引」的映射,可以这样写:
const keysWithIndex = Array.from({ length: localStorage.length }, (_, i) => ({
index: i,
key: localStorage.key(i)
}));
结果类似:[{index: 0, key: "user"}, {index: 1, key: "theme"}]。注意:这个顺序依赖浏览器实现,不要用于强序依赖场景。
Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。
注意:没有“占用的索引”这种状态
LocalStorage 的“索引”只是枚举位置,不是像数组那样可删除后自动重排的逻辑索引。比如你删掉第 0 个键,localStorage.key(0) 会变成原来第 1 个键,后续索引整体前移——所以“当前占用的索引”其实就是 0 到 localStorage.length - 1 这一段连续整数,没有空缺。
想查某个键的索引?只能遍历匹配
LocalStorage 不支持反向查索引(即给定键名返回它是第几个)。你需要手动遍历:
function getKeyIndex(key) {
for (let i = 0; i <p>这是唯一可靠方式,时间复杂度 O(n),但日常使用完全够用。</p>Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










