使用JavaScript如何将Object对象转换为Array数组
你给出的原始DATA示例存在语法问题,外层对象的属性必须绑定键名,默认你实际使用的dateOfConversation是合法的键值对结构,值为需要存入数组的会话条目,以下是几种实现方案:
方案1:使用Object.values()(推荐)
该API可以直接提取对象所有可枚举属性的值,返回结果就是你需要的数组:
const DATA = Object.values(dateOfConversation);
方案2:修复你的map写法
你原来的写法逻辑没问题,没生效是因为map会返回新数组而非修改原对象,你需要用变量接收返回结果:
const DATA = Object.keys(dateOfConversation).map(key => dateOfConversation[key]);
方案3:reduce实现版本
如果需要在转换过程中加入自定义处理逻辑,可以用reduce实现:
const DATA = Object.keys(dateOfConversation).reduce((result, currentKey) => { result.push(dateOfConversation[currentKey]); return result; }, []);
内容的提问来源于stack exchange,提问作者Darron
相关产品推荐
相关产品推荐

