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

如何将带有动态属性的对象的属性值转换为数组

解决方案

你可以使用以下两种原生JS方法实现动态转换,不管对象属性数量如何变化都能自动适配:

方法1:使用 Object.values()(推荐,写法最简洁)

该API会直接返回对象所有可枚举属性的值组成的数组,无需额外遍历:

// 你的原始对象
const origin = {
  titles: {
    dr: 'Dr',
    prof: 'Prof',
    profdr: 'Prof Dr'
  }
}

// 转换逻辑
const result = Object.values(origin.titles)

运行后result的值就是你需要的['Dr', 'Prof', 'Prof Dr']。
该语法是ES2017(ES8)标准引入的,所有现代浏览器、Node.js 7.0+版本都原生支持。

方法2:兼容旧环境的写法

如果需要兼容ES5及更早的运行环境,可以用Object.keys()配合map实现:

const result = Object.keys(origin.titles).map(key => origin.titles[key])

两种方法都完全动态适配,哪怕后续你给titles新增、删除属性,转换逻辑都不需要修改,自动返回最新的属性值数组。

内容的提问来源于stack exchange,提问作者Dušan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 23:15:04