js开发中如何把键值对对象转换成数组对象

JavaScript024

js开发中如何把键值对对象转换成数组对象,第1张

只需要一句,arr.__proto__=[]但是要注意浏览器支持__proto__才行,最新的浏览器应该都支持。

以下两种都可以解决此问题:

function transform(obj){

var arr = []

for(var item in obj){

arr.push(obj[item])

}

return arr

}

或者

public static void main(String[] args) {

String [] s={"2","3","4"}

int [] array=new int[3]

for(int i=0i<s.lengthi++){

array[i]=Integer.parseInt(s[i])

System.out.println(array[i])

}

}

这是toString()的结果啊~

你要是改成这样:

var person={"name":“张三”,“gender”:"男"};

person.toString = function(){

return '{"name":“张三”,“gender”:"男"}'

}

alert(person)

你看看什么结果?

如何把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"]