有时候,拿到一个对象,会希望将其专化成自己需要的数据结构,如数组,方便应用于一些场合。本质都是遍历对象,对其key,value 进行处理。
这里,我们不仅希望简单的拿到,key or value的集合,而是希望分别拿到key,value,组成一个对象,再将其组成数组。下面的代码即可以实现。
let obj={"shanghai":[1,2,3],"chengdu":[1,2,3,4,5]};
var arr=[];
for(let i in obj){
let o={name:i,v:obj[i]};
arr.push(o);
}
console.log(arr);
输出的结果如下:
[ { name: 'shanghai', v: [ 1, 2, 3 ] },
{ name: 'chengdu', v: [ 1, 2, 3, 4, 5 ] } ]
很简单,也很实用。