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

如何按序号获取JavaScript列表中第n个元素的键名与键值

JavaScript按序号遍历对象键值对的实现方案

你给出的示例结构为JavaScript普通对象,若需要按序号获取每一项的键(名称)和值,可通过内置方法将对象的键值对转为可索引的数组实现,具体方案如下:

  • 方案1:ES6+ 推荐使用Object.entries()
    该方法会直接返回一个由对象的[键, 值]对组成的数组,数组顺序和普通对象的遍历顺序一致,可直接按索引访问对应项:
// 你的原对象
const targetObj = {"test-item-1": false, "test-item-2": false, "test-item-3": false};
// 转成可按索引访问的键值对数组
const entryList = Object.entries(targetObj);

// 按序号遍历
for (let i = 0; i < entryList.length; i++) {
  const [itemName, itemValue] = entryList[i];
  // 此处添加你的后续处理逻辑
  console.log(`序号${i}:名称为${itemName},值为${itemValue}`);
}

// 单独按序号取某一项,示例取第2项(索引从0开始计数)
const [targetKey, targetValue] = entryList[1];
  • 方案2:兼容旧环境的实现
    若需要兼容不支持Object.entries()的旧版本JS环境,可以先用Object.keys()获取键的数组,再通过键取值:
const targetObj = {"test-item-1": false, "test-item-2": false, "test-item-3": false};
const keyList = Object.keys(targetObj);

for (let i = 0; i < keyList.length; i++) {
  const itemName = keyList[i];
  const itemValue = targetObj[itemName];
  // 后续处理逻辑
}

注意:普通对象的键排序规则受ES规范约束,数字格式的键会被自动按升序排在最前,若你需要严格保证项的顺序和插入顺序完全一致,建议使用Map结构存储数据,Map的entries()方法返回的数组完全遵循插入顺序,不受键类型影响。


内容的提问来源于stack exchange,提问作者Oren Lindsey

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 22:27:03