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

如何将JavaScript对象转换为对象数组?

如何将JavaScript对象转换为对象数组?

输入对象

{
  AF: 'Afghanistan',
  AX: 'Åland Islands',
  AL: 'Albania',
  DZ: 'Algeria'
}

实现方法

方法一:使用Object.entries() + map()(现代JavaScript)

这是最简洁的实现方式,适配ES6及以上环境:

const originalObj = {
  AF: 'Afghanistan',
  AX: 'Åland Islands',
  AL: 'Albania',
  DZ: 'Algeria'
};

const resultArray = Object.entries(originalObj).map(([value, label]) => ({ value, label }));

Object.entries()会把原对象转换为[键, 值]结构的二维数组,再通过map()遍历每个子数组,解构出键和值后生成目标格式的对象。

方法二:使用for...in循环(兼容旧环境)

如果需要支持不兼容ES6的旧运行环境,可以用传统循环实现:

const originalObj = {
  AF: 'Afghanistan',
  AX: 'Åland Islands',
  AL: 'Albania',
  DZ: 'Algeria'
};

const resultArray = [];
for (const key in originalObj) {
  // 只遍历对象自身的属性,排除继承的原型属性
  if (originalObj.hasOwnProperty(key)) {
    resultArray.push({ value: key, label: originalObj[key] });
  }
}

输出结果

[
    {value: 'AF', label: 'Afghanistan'},
    {value: 'AX', label: 'Åland Islands'},
    {value: 'AL', label: 'Albania'},
    {value: 'DZ', label: 'Algeria'}
]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 08:50:36