2016-11-07 57 views
0

我目前正在使用JavaScript作为前端的项目,并且在添加现有阵列上的密钥时遇到了一些麻烦。如何在现有的阵列上添加密钥javascript

我有一个对象,我想转换数组javascript。

这里是我的代码如何将我的对象转换为数组。

 var obj = data[0]; 
     var site_value = Object.keys(obj).map(function (key) { return obj[key]; }); 

     var site_key = $.map(obj, function(value, key) { 
      return key; 
     }); 

site_value具有我的对象的值。 site_key有密钥。

我想将我的site_key作为key添加到site_value数组中。

示例数据:

site_value: 0:数组[4] 0:数组[4] 1:阵列[1] 2:数组[1] 3:数组[0]

site_key:

Array[49] 
    0:"AGB" 
    1:"BAK" 
    2:"BAN" 
    3:"BAR" 

我希望我的阵列是

AGB:Array[4] 
    0:Array[4] 
    1:Array[1] 
    2:Array[1] 
    3:Array[0] 

更新:

这是我的对象。

Array[1]0: 
    Object 
    AGB: Array[4] 
    BAK: Array[4] 
    BAN: Array[4] 

+0

你的obj是怎么样的? – Sreekanth

+0

我更新了这个问题,谢谢 –

+0

它看起来像你试图获得多维数组像php样式,但javascript使用这个对象。 – daremachine

回答

0

你已经几乎完成了它,我已经修改了它下面有点它返回的数组对象,

var obj = data[0]; 

var site_value = Object.keys(obj).map(function (key) { 
    var output = {}; 
    output[key] = obj[key]; 

    return output; 
}); 
+0

是0还是O? –

+0

对不起,这是一个变量。将其重命名为'output'。 – Aruna

+0

我试过你的建议,但是它返回一个数组,但里面是一个对象,它内部又是一个数组。我希望它是一个数组与前数组。 Agb [4] –

0

我可能会被误解的问题,对不起,如果我。我想你想使用一个键“AGB”而不是一个数组索引的整数。在这种情况下,您可能会更好地使用对象而不是数组。也许是这样的

var myObject = { 
AGB: Array[4], 
AGBarrays: [Array[4],Array[1],Array[1],Array[0]] 
}; 

然后,你可以通过密钥和其他阵列通过索引来访问AGB

+0

我需要它是一个数组,因为数据将被加载到highchart.js –

+0

这是因为highcharts给它的索引的描述? – user3634054

+0

如果是这种情况,使用一系列 – user3634054

相关问题