如何将嵌套对象转换为数组数组
嗨,我有一个情况下,我想将array of object
array of array
转换为array of array
这里是我的目标 array
,看起来像这样
(32) [Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object, Object]0: Object1: Object2: Object3: Object4: Object5: Object6: Object7: Object8: Object9: Object10: Object11: Object12: Object13: Object14: Object15: Object16: Object17: Object18: Object19: Object20: Object21: Object22: Object23: Object24: Object25: Object26: Object27: Object28: Object29: Object30: Object31: Objectlength: 32__proto__: Array(0)
我认为它有这样的结构:
targetObject = [ {location: "MUGABALA KOLAR ROAD", latitude: 13.108435679884, longitude: 77.890262391016}, {location: "pune", latitude: 18.6202008, longitude: 73.7908073}, {location: "RAJARAJESHWARI NAGAR BANGLORE", latitude: 12.901112992767, longitude: 77.5037757} ];
我想要的输出:
$resultant = [ ["MUGABALA KOLAR ROAD", 13.108435679884, 77.890262391016], ["pune", 18.6202008, 73.7908073], ["RAJARAJESHWARI NAGAR BANGLORE", 12.901112992767, 77.5037757] ];
你可以映射Object.values
的结果。
对于较老的用户代理,您可以使用polyfill 。
var array = [{ location: "MUGABALA KOLAR ROAD", latitude: 13.108435679884, longitude: 77.890262391016 }, { location: "pune", latitude: 18.6202008, longitude: 73.7908073 }, { location: "RAJARAJESHWARI NAGAR BANGLORE", latitude: 12.901112992767, longitude: 77.5037757 }], result = array.map(Object.values); console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }
你可以使用Object.values()和Array.prototype.map()来做到这一点 :
var results = targetObject.map(function(obj){ return Object.values(obj); }); console.log(results);
演示:
targetObject = [ {location: "MUGABALA KOLAR ROAD", latitude: 13.108435679884, longitude: 77.890262391016}, {location: "pune", latitude: 18.6202008, longitude: 73.7908073}, {location: "RAJARAJESHWARI NAGAR BANGLORE", latitude: 12.901112992767, longitude: 77.5037757} ]; var results = targetObject.map(function(obj){ return Object.values(obj); }); console.log(results);