[英]How to create two arrays with different values in them from a JSON object?
[英]How can I create a json object from 3 different arrays in angularJS
我有3个不同的数组,一个带有表的列名,另一个带有数据。 我怎样才能将它们组合成一个在AngularJS中的单个json对象?
var keyArray = ["Col1","Col2","Col3",...];
var ValArray1 = ["v1.1","v1.2","v1.3",...];
var ValArray2 = ["v2.1","v2.2","v2.3",...];
我想要一个像这样的json
entries[
{
name: "Col1",
value: "v1.1"
},
{name: "Col2",
value: "v1.2"
},
...,
{name: "Col3",
value: "v2.3"
}
]
条目如何= {“ Col1”:“ v1.1”,“ Col2”:“ v1.2”,“ Col3”:“ v2.3”}因此,您可以作为v1.1的entry [Col1]来访问它
这样可以吗 您根本不需要angularjs。
var addToArray = function(entries, keys, values){
for(var i = 0; i < keys.length; i++){
if(keys[i] && values[i]) {
var obj = {};
obj[keys[i]] = values[i];
entries.push(obj);
}
}
}
var entries = [];
addToArray(entries, keyArray, ValArray1);
addToArray(entries, keyArray, ValArray2);
如果您想使用angular的东西,可以改用angular.forEach
这将把键与数组1混合,然后将键与数组2混合。我这样做是因为在您的问题中没有明确说明何时停止使用数组1并开始使用数组2(在使用所有值之后数组二,也许吗?
无论如何,出于您的目的,我认为关键是
obj[keys[i]] = values[i];
这将使您可以使用数组中的字符串创建属性名称
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.