如何把JS对象转成数组

JavaScript015

如何把JS对象转成数组,第1张

如何把JS对象转成数组

1. 前言

首先,当JS对象是键值对的情况时(Json对象),因为数组时以数字为索引的,所以只能把JS对象中的Key或者Value组成数组使用。

2. 样例如下:

var obj={"one":"I am 1","two":"I am 2"}

var arr = Object.getOwnPropertyNames(obj) //arr=["one", "two"]

var arr2 = Object.keys(obj)//arr=["one", "two"]

var valArr = arr.map(function(i){return obj[i]})//["I am 1", "I am 2"]

var valArr2 = arr2.map(function(i){return obj[i]})//["I am 1", "I am 2"]

//或者2,4和3,5各自合并成一条语句

var valArr22 = Object.keys(obj).map(function(i){return obj[i]})//["I am 1", "I am 2"]

Object转Array有多种方式,可以使用 Object.entries() ,Object.keys(),Object.values()

MDN解释:

Object.entries() 返回一个给定对象自身可枚举属性的键值对数组

Object.keys() 返回一个由一个给定对象的自身可枚举属性组成的数组

Object.values() 方法返回一个给定对象自身的所有可枚举属性值的数组