Javascript 将数组/对象数组转换为JSON
我不能对这个问题掉以轻心。以下是逻辑构建阵列的方式:Javascript 将数组/对象数组转换为JSON,javascript,node.js,Javascript,Node.js,我不能对这个问题掉以轻心。以下是逻辑构建阵列的方式: array1 = [ [array2], [array3], [array4] ... [array17] ] array2 = [ ['obj1'], ['obj2'], ['obj3'] ... ['obj30'] ] ... ... obj1 = ({prop1 : 'string1'}, { prop2 : 'string2'}, {prop3 : 'string3'} ... {prop30 : 'string30'}) obj2
array1 = [ [array2], [array3], [array4] ... [array17] ]
array2 = [ ['obj1'], ['obj2'], ['obj3'] ... ['obj30'] ]
...
...
obj1 = ({prop1 : 'string1'}, { prop2 : 'string2'}, {prop3 : 'string3'} ... {prop30 : 'string30'})
obj2 = ({prop1 : 'string1'}, { prop2 : 'string2'}, {prop3 : 'string3'} ... {prop30 : 'string30'})
obj3 = ({prop1 : 'string1'}, { prop2 : 'string2'}, {prop3 : 'string3'} ... {prop30 : 'string30'})
...
...
obj30 = ({prop1 : 'string1'}, { prop2 : 'string2'}, {prop3 : 'string3'} ... {prop30 : 'string30'})
我想将其展平为JSON对象,如:
{"array1":[
{ "array2":[
{"obj1":[
{"prop1" : "string1",
"prop2" : "string2"
}
}]
}]
]}
以下是我的想法:
for (i=0; i < array1; i++) {
var count = 0
while (count < array1[0].length) {
var jsonObj = {
array[i] : {
array[count] : {
obj[count] : {
'prop1' : 'string1'
}
}
}
}
count++;
}
}
(i=0;i{
变量计数=0
while(计数<数组1[0]。长度){
var jsonObj={
数组[i]:{
数组[计数]:{
obj[计数]:{
“prop1”:“string1”
}
}
}
}
计数++;
}
}
您可以在循环响应时推送所有responseData.res
secondRes.push.apply(secondRes, responseData.res)
或者先使用concat展平firstRes
var secondRes = firstRes.concat.apply([], firstRes);
所以,这个问题有点让人困惑。但是,如果您想从对象数组中创建一个数组,这就是您的方法
secondArray=[];
firstArray.map((object, key) => {
let innerArray = [];
for (let prop in object){
innerArray.push(object[prop])
}
secondArray.push(newArray);
});
请在问题中加入代码/a。让我们知道具体的问题是什么/您遇到了什么问题。使我们能够更方便地帮助您,并使问题与未来的访问者更相关。您的代码至少缺少一个}
。请在错误的地方修复它。也许值得先看一下下划线JS的展平函数。请实现一个提琴或plunker。我假设您在使用[1]:[2]时可以很好地处理对象和数组:如果您只是尝试将数组数组展平为单个数组,您可以阅读以下内容