如何从仅含一个对象的数组中提取对象值生成新数组
实现方案
方案1:最简实现(ES2017+ 环境支持)
直接通过Object.values()提取对象所有属性值即可,代码如下:
let newArray = Object.values(myVar[0]);
逻辑说明:
myVar[0]获取数组中唯一的目标对象Object.values()会返回给定对象自身可枚举属性的所有值组成的数组,顺序和普通遍历对象的顺序一致,完全符合你需要的输出结果。
方案2:兼容旧环境的实现
如果运行环境不支持ES2017的Object.values(),可以用Object.keys()加数组map方法实现:
let newArray = Object.keys(myVar[0]).map(function(key) { return myVar[0][key]; });
两种方案运行后得到的newArray都为 ["A", "B", "C", "D"],符合需求。
内容的提问来源于stack exchange,提问作者ArthurJ
相关产品推荐
相关产品推荐

